software product development knowledge graph
Structured context for AI-driven software product development. Know turns product decisions into dependency graphs that LLMs can traverse — linking what you’re building and why to how it gets implemented.
Spec files are fine for humans. For AI agents, they’re token overhead — brittle snapshots that bloat, duplicate, and rot.
Two graphs, one truth. The spec graph maps what users need. The code graph maps what exists. Cross-links connect intent to implementation.
%%{init: {'theme': 'dark', 'themeVariables': {'primaryColor': '#171a28', 'primaryTextColor': '#cdd2e6', 'primaryBorderColor': '#2c3150', 'lineColor': '#4e5370', 'secondaryColor': '#0b0d14', 'tertiaryColor': '#10121c', 'edgeLabelBackground': '#10121c', 'clusterBkg': '#0b0d14', 'clusterBorder': '#222640', 'fontFamily': 'IBM Plex Mono, monospace', 'fontSize': '13px'}}}%%
flowchart TD
subgraph spec ["spec-graph.json — product intent"]
direction TD
P["project"]:::project --> U["user"]:::user
U --> O["objective"]:::objective
O --> F["feature"]:::feature
end
subgraph code ["code-graph.json — codebase"]
direction TD
M["module"]:::cmod --> Pk["package"]:::cpkg
M --> Cl["class"]:::ccls
Cl --> Fn["function"]:::cfn
end
classDef project fill:#5c9eff18,stroke:#5c9eff60,color:#5c9eff
classDef user fill:#66e0a018,stroke:#66e0a060,color:#66e0a0
classDef objective fill:#ff8a5018,stroke:#ff8a5060,color:#ff8a50
classDef feature fill:#40c8ff18,stroke:#40c8ff60,color:#40c8ff
classDef cmod fill:#5c9eff18,stroke:#5c9eff60,color:#5c9eff
classDef cpkg fill:#d580ff18,stroke:#d580ff60,color:#d580ff
classDef ccls fill:#ffcc3318,stroke:#ffcc3360,color:#ffcc33
classDef cfn fill:#5af5a018,stroke:#5af5a060,color:#5af5a0
// spec-graph.json
{
"entities": {
"feature": {
"auth": {
"name": "Authentication",
"description": "User login system"
}
}
},
"graph": {
"feature:auth": {
"depends_on": [
"action:login",
"action:logout",
"component:session"
]
}
},
"references": {
"implementation": {
"auth": {
"module": "module:auth",
"graph": "code-graph.json"
}
}
}
}
The spec graph knows what to build. The code graph knows what exists. Heat scores tell you what’s actually moving — five git-derived signals fused into a single composite score per file and method.
One traversal links intent to code with relevance.
{
"path": "src/graph.py",
"heat": {
"score": 0.659,
"label": "warm",
"signals": {
"churn": 0.520, // 17 commits in 90d window
"recency": 0.890, // touched 2 days ago, 14d half-life
"complexity": 0.740, // 890 lines
"centrality": 0.610, // high fan-in from 8 importers
"ripple": 0.380 // neighbors moderately active
}
},
"functions": [
{ "name": "update_entity", "heat": { "score": 0.810, "label": "hot" } },
{ "name": "load_graph", "heat": { "score": 0.210, "label": "cool" } }
]
}
Know gives agents structured project context without token-wasting repeated analysis. Query the graph, traverse dependencies, generate specs on demand.
Traverse from user intent to implementation in a single CLI call.
know graph uses feature:auth returns the full dependency
tree — no file scanning required.
Specs are produced from the graph when needed, always current.
know gen feature-spec auth outputs a complete spec
document from live graph state.
The /know:build slash command drives 7-phase feature
development with XML task specs, checkpoints, and
progress tracking.
know gen trace feature:auth follows links across
spec and code graphs. See which modules implement which features
without manual mapping.
know check validate enforces DAG structure, dependency
rules, and completeness. Agents get immediate feedback when graph
modifications break constraints.
know check gap-summary identifies missing implementations,
orphaned references, and incomplete dependency chains. Agents know
exactly what’s left to build.
# Initialize — sets up your project in one command:
# slash commands → .claude/commands/know/
# know-tool skill → .claude/skills/know-tool/
# graph config → .ai/know/config/
# initial graphs → .ai/know/{spec,code}-graph.json
# project context → .ai/know/project.md
# protection hook → prevents direct graph file edits
# CLAUDE.md → injects <know-instructions> block
know init .
# Agent reads project context
know -g .ai/know/spec-graph.json list --type feature
know graph uses feature:auth
know gen feature-spec auth --format xml
# Agent modifies the graph
know add feature payment '{"name":"Payments","description":"..."}'
know link feature:payment action:checkout component:stripe
know check validate
# Agent generates specs from graph state
know gen spec feature:payment --format xml
know gen trace feature:payment
Claude Code slash commands wrap the CLI with guided, multi-phase workflows. Agents get interactive discovery, planning, building, and review.
| Command | What it does | Phase |
|---|---|---|
| /know:plan | QA-driven product discovery — builds spec-graph from conversation | Discovery |
| /know:add | Add features with 5-step interactive workflow + graph linking | Discovery |
| /know:prepare | Bootstrap existing codebase into both graphs with parallel agents | Setup |
| /know:prebuild | Validate specs align with graph before building | Validation |
| /know:build | 7-phase structured development: discover → explore → design → implement → integrate → test → review | Execution |
| /know:change | Structured change requests with requirement tracking | Execution |
| /know:review | Interactive QA walkthrough for end-user acceptance testing | Review |
| /know:done | Archive completed feature, update horizon, clean up artifacts | Completion |
| /know:bug | Track issues against features with automatic todo tracking | Maintenance |
| /know:list | Show features grouped by horizon with task progress | Query |
# Query
know list --type feature # list entities by type
know graph uses feature:auth # dependency tree (down)
know graph used-by component:x # reverse dependency (up)
know search "auth" # fuzzy search
# Modify
know add feature auth '{"name":"Auth"}'
know link feature:auth action:login action:logout
know unlink feature:auth action:old
# Validate
know check validate # full graph validation
know check health # comprehensive report
know check gap-summary # what's missing
# Generate
know gen feature-spec auth # markdown spec from graph
know gen spec auth --format xml # XML task spec
know gen trace feature:auth # cross spec↔code boundary
know gen trace-matrix # full traceability matrix
# Visualize
know viz tree # ASCII tree
know viz mermaid # diagram export
know viz d3 # interactive D3 viz
“I had to generate user flows for my product manager. I didn’t want to sit there with Playwright and personas. Know read my code, asked a few questions, and made great step-by-steps for each requirement.”
“Now Know is the backstop for Playwright.”
“My agents stop guessing during implementation. They Know.”
Know is open source. MIT licensed. No tricks.
Want commercial support?
Install know-cli, run know init . in your project,
and give your agents structured context that actually works.