reasoning
Graph Reasoning - Navigate the documentation graph to progressively refine a hypothesis until a stable conclusion is formed.
What this skill does
# Graph Reasoning
This skill defines how the agent thinks using the documentation graph.
The graph is not a database to search. It is a reasoning space to traverse.
The agent MUST navigate nodes to progressively refine a hypothesis until a stable conclusion is formed.
> [!IMPORTANT] The agent does not retrieve answers. It stabilizes understanding by traversing causality.
---
## 0. Semantic Topology Understanding
Before any traversal, the agent MUST interpret the meaning of the graph structure.
**Action**: Read `docgraph.toml` in the project root.
The agent reads `docgraph.toml` and classifies each node type into a reasoning role:
| Role | Meaning | Example Node Types |
| :------------------------ | :---------------------------------- | :----------------- |
| **Intent** (WHY) | Purpose and motivation | UC, ACT |
| **Constraint** (BOUNDARY) | Non-negotiable conditions | CON |
| **Responsibility** (WHAT) | Obligations the system must fulfill | FR, NFR |
| **Realization** (HOW) | Concrete mechanisms and structures | MOD, IF, CC |
| **Evidence** (PROOF) | Verification artifacts (optional) | TEST, MET, LOG |
| **Rationale** (DECISION) | Design justification | ADR |
| **Domain** (CONTEXT) | Shared data models | DAT |
### Semantic Gravity
The agent MUST never move arbitrarily across node categories.
Movement is constrained by semantic gravity:
- **Intent** pulls toward purpose
- **Responsibility** pulls toward obligation
- **Realization** pulls toward mechanism
- **Evidence** pulls toward validation
- **Constraint** pulls toward non-negotiable invariants
- **Rationale** pulls toward justification
If the agent cannot name the gravitational pull driving a move, the move is invalid.
---
## 1. Reasoning Loop
The agent operates in a continuous loop:
1. **Hold a hypothesis** — a claim about the graph's state
2. **Move to the next node** — following semantic gravity
3. **Update the hypothesis** — based on what was found
This is not search. This is exploration.
The loop terminates when the hypothesis is stable: no further traversal changes the conclusion.
---
## 2. Allowed Reasoning Moves
Every move MUST preserve causal meaning. Each edge carries a question the agent is asking.
```
Intent → Responsibility
"What must be satisfied?"
Responsibility → Realization
"How is it achieved?"
Realization → Realization
"What depends on this?"
Responsibility → Constraint
"What boundaries apply?"
Realization → Rationale
"Why was this design chosen?"
Realization → Evidence
"Is it proven?"
Evidence → Responsibility
"What failed or needs adjustment?"
```
The `r.type` field in `docgraph.toml` (`rel`) names the semantic relationship.
A move is valid only if `r.type` matches the question of that move. If the mapping is unknown, the agent MUST stop and
re-classify the edge semantics from `docgraph.toml`.
---
## 3. Reasoning Patterns
### 3.1 Closure (Is it complete?)
Start from a node. Attempt to reach a terminal. If no path reaches a Realization or Evidence node, the structure is
incomplete.
```bash
docgraph query "MATCH (n)-[r*1..3]->(m:MOD) WHERE n.id = '<ID>' RETURN m.id, r.type"
```
### 3.2 Forward (How is it realized?)
Start from Intent or Responsibility. Follow semantic gravity downward. Each step asks: "How does this become concrete?"
```bash
docgraph query "MATCH (n)-[r]->(m) WHERE n.id = '<ID>' RETURN m.id, m.type, r.type"
```
### 3.3 Backward (Why does this exist?)
Start from Realization. Follow relationships upward. Each step asks: "What justified this?"
```bash
docgraph query "MATCH (n)-[r]->(m) WHERE m.id = '<ID>' RETURN n.id, n.type, r.type"
```
### 3.4 Counterfactual (What breaks if removed?)
Hypothetically remove a node. Trace all dependents. A node loses its justification when all incoming edges with a
justification `r.type` (e.g., `used_by`, `realized_by`, `constrained_by`) originate from the removed node.
```bash
docgraph query "MATCH (n)-[r]->(m) WHERE m.id = '<ID>' RETURN n.id, r.type"
```
---
## 4. Tools
Tools materialize reasoning decisions. They do not drive them.
> [!CAUTION] Cypher MUST NOT be used to discover what to think. Cypher is only used to materialize a reasoning decision
> already made.
>
> If the agent starts from a query instead of a hypothesis, it is performing search, not reasoning.
### `docgraph query`
Executes a Cypher query to confirm or refute a hypothesis.
```bash
docgraph query "<CYPHER_QUERY>"
```
### `docgraph describe`
Inspects a single node and its immediate relationships.
```bash
docgraph describe <ID>
```
---
## 5. Reasoning Report
Structure findings as reasoning conclusions, not search results.
### Hypothesis
- **Initial**: [What the agent believed before traversal]
- **Final**: [What the agent concluded after traversal]
### Traversal Trace
Show the path taken and the reasoning at each step:
```
UC_001 --(uses)--> FR_001 --(realized_by)--> MOD_001
"What must be satisfied?" "How is it achieved?"
```
### Stability Assessment
- **Conclusion Stable**: [Yes/No]
- **Unresolved Nodes**: [List of nodes that could not be reached or justified]
- **Integrity**: [PASS/FAIL]
Related in General
modeling-omnistudio-epc-catalog
IncludedSalesforce Industries CME EPC product-modeling skill for Product2-based catalog creation. Use when creating EPC products, configuring product attributes, building offer bundles with Product Child Items, or reviewing EPC DataPack JSON metadata for product catalog changes. TRIGGER when: user creates or updates Product2 EPC records, AttributeAssignment payloads, AttributeMetadata/AttributeDefaultValues, Offer bundles, or ProductChildItem relationships. DO NOT TRIGGER when: designing OmniScripts/FlexCards/Integration Procedures (use building-omnistudio-omniscript, building-omnistudio-flexcard, or building-omnistudio-integration-procedure), implementing Apex business logic (use generating-apex), or troubleshooting deployment pipelines (use deploying-metadata).
relationship-science-coach
IncludedUse this skill for direct, practical adult relationship coaching: couples conflict, repair, trust, marriage, dating, flirting, attachment patterns, emotional connection, sex, desire differences, eroticism, kink negotiation, affection, love languages, breakups, and long-term passion. Draw on Gottman, EFT and Hold Me Tight, attachment science, modern sex research, Perel, Nagoski, Kerner, Schnarch, Love and Stosny, and flexible love-language tools. Be concrete and low-hedge. Redirect only for imminent danger, abuse, coercive control, minors, non-consent, self-harm, stalking, or medical/legal/psychiatric decisions.
building-sf-integrations
IncludedSalesforce integration architecture and runtime plumbing with 120-point scoring. Use this skill to set up Named Credentials, External Credentials, External Services, REST/SOAP callout patterns, Platform Events, and Change Data Capture. TRIGGER when: user sets up Named Credentials, External Services, REST/SOAP callouts, Platform Events, CDC, or touches .namedCredential-meta.xml files. DO NOT TRIGGER when: Connected App/OAuth config (use configuring-connected-apps), Apex-only logic (use generating-apex), or data import/export (use handling-sf-data).
venue-templates
IncludedAccess comprehensive LaTeX templates, formatting requirements, and submission guidelines for major scientific publication venues (Nature, Science, PLOS, IEEE, ACM), academic conferences (NeurIPS, ICML, CVPR, CHI), research posters, and grant proposals (NSF, NIH, DOE, DARPA). This skill should be used when preparing manuscripts for journal submission, conference papers, research posters, or grant proposals and need venue-specific formatting requirements and templates.
let-fate-decide
IncludedDraws the 12 Houses of the Zodiac Tarot spread to inject entropy into planning when prompts are vague, ambiguous, or casually delegated. Interprets the spread to guide next steps. Use when the user says 'let fate decide', 'YOLO', 'whatever', 'idk', or other nonchalant phrases, makes Yu-Gi-Oh references, or when you are about to arbitrarily pick between multiple reasonable approaches. Prefer over ask-questions-if-underspecified when the user's tone is casual or playful rather than precision-seeking.
net-ops
IncludedCross-platform network troubleshooting (Windows, macOS, Linux) via local or remote shell. Use for: DNS broken, can't resolve hostnames, nslookup/dig works but apps fail, NRPT, WFP, scutil, /etc/resolver, systemd-resolved, /etc/resolv.conf, NetworkManager, VPN DNS leak residue (ProtonVPN/Mullvad/WireGuard/AnyConnect), AV/firewall blocking DNS or DoH, Tailscale DNS interaction, intermittent connectivity, remote diagnostics over SSH.