| Dimension | Shared | Only in A | Only in B | Overlap |
|---|---|---|---|---|
| Sections | 0 | 8 | 5 | 0% |
| Commands | 3 | 3 | 4 | 30% |
| Section tags | 2 | 3 | 3 | 25% |
What each file covers
Sections
0 shared · 8 only in A · 5 only in B- − NSForge Agent Harness
- − Goal
- − North Star
- − Working Style
- − Ground Truth: one command
- − Repo Layout (DDD)
- − Guardrails
- − Related Files
- + Python Rules (uv / ruff / mypy / pytest)
- + Environment
- + Architecture Guardrails
- + Validation Gates
- + Discipline
Commands
3 shared · 3 only in A · 4 only in B- − python scripts/check.py --json
- − python scripts/check.py --gates lint,type,test
- − mypy
- + uv run ruff check .
- + uv run ruff format --check .
- + uv run mypy src --ignore-missing-imports
- + uv run pytest
- python scripts/check.py
- uv run ...
- python scripts/gen_capabilities.py
Section tags
2 shared · 3 only in A · 3 only in B- − architecture
- − security
- − agent-behaviour
- + setup
- + test
- + lint-format
- code-style
- do-not
Line diff
u9401066/nsforge-mcp · AGENTS.md
@@ −1 @@
1# NSForge Agent Harness
2
3Workspace instructions for autonomous agents (Copilot, Cline, Codex, OpenHands,
4Hermes, …) working in the **Neurosymbolic Forge (NSForge)** repository.
5
6## Goal
7
8Help build and operate NSForge — an MCP server that turns *concepts* into
9verifiable, traceable *entities* (symbols → derivations → algorithms). The AI
10orchestrates; deterministic tools reify. See
11`docs/reification-ladder-direction.md` for the north star.
12
13## North Star
14
15> Every symbol / equation / value / line of code in a final result must have a
16> tool call as its "birth certificate" (provenance). The AI must not hand-derive
17> any of them.
18
19Success = the amount the AI computes by hand approaches zero.
20
21## Working Style
22
23- Use Traditional Chinese unless the user asks otherwise.
24- Prefer exact file paths, command output summaries, and verification results.
25- Offload mechanical/deterministic steps (symbolic calculation, simplification,
26 code generation) to tools — do not hand-derive formulas.
27- When changing behavior, add a focused regression test under `tests/`.
28
29## Ground Truth: one command
30
31Before and after changes, verify against the green baseline:
32
33```bash
34python scripts/check.py # all gates
35python scripts/check.py --json # machine-readable summary (for agents)
36python scripts/check.py --gates lint,type,test # subset
37```
38
39Gates: lint, format, type, import, manifest, test, bench, generic, provenance, harness, diff. Exit code 0 = green.
40(bench = derivation-correctness of `benchmarks/*.json` through the L3 orchestrator;
41generic = arbitrary unseen compositions derive correctly, proving NSForge is a
42derivation *calculus*, not a hand-built formula library; provenance = every
43benchmark derivation carries a complete tool-provenance ledger, no hand-derived leaks;
44harness = the harness self-checks its own invariants — version single-source,
45self-describing tools, and gate/doc parity — so agents can trust the signal.)
46
47## Repo Layout (DDD)
48
49- `src/nsforge/domain/`: pure domain models/value objects (no I/O)
50- `src/nsforge/application/`: use-cases / orchestration
51- `src/nsforge/infrastructure/`: adapters (sympy engine, formula sources, file I/O)
52- `src/nsforge_mcp/`: MCP tool layer + server wiring (`server.py`, `tools/`)
53- `docs/agent/capabilities.json`: machine-readable tool manifest (self-describing)
54
55## Guardrails
56
57- Keep `src/nsforge/domain` free of I/O and infrastructure imports.
58- Do not weaken `mypy` strict or skip gates just to make checks pass.
59- Prefer `uv run ...` so tools use the project venv.
60- Avoid destructive git ops (`reset --hard`, `clean -fdx`) unless asked.
61- Never commit secrets or generated outputs (`dist/`, `.venv/`, `data/`).
62- After adding/removing an `@mcp.tool`, regenerate the manifest:
63 `python scripts/gen_capabilities.py`.
64
65## Related Files
66
67- `docs/reification-ladder-direction.md` — architecture direction
68- `scripts/check.py` — verification harness (ground truth)
69- `scripts/gen_capabilities.py` — capability manifest generator
70- `.github/copilot-instructions.md` — Copilot rules
71- `memory-bank/activeContext.md` — current focus
72
u9401066/nsforge-mcp · .clinerules/10-python.md
@@ +1 @@
1---
2paths:
3 - "src/**/*.py"
4 - "tests/**/*.py"
5 - "scripts/**/*.py"
6 - "pyproject.toml"
7---
8
9# Python Rules (uv / ruff / mypy / pytest)
10
11## Environment
12- Use `uv` for running tools (avoid ad-hoc `pip`).
13- Prefer `uv run ...` so checks execute in the right venv and dependency set.
14
15## Architecture Guardrails
16- Keep `src/nsforge/domain` free of I/O, filesystem access, and infrastructure imports.
17- Put orchestration/side-effects in `src/nsforge/application` or `src/nsforge/infrastructure`.
18- MCP tool wiring lives in `src/nsforge_mcp/` (`server.py`, `tools/`).
19
20## Validation Gates
21- One command: `python scripts/check.py`
22- Or individually:
23 - Lint: `uv run ruff check .`
24 - Format: `uv run ruff format --check .`
25 - Types: `uv run mypy src --ignore-missing-imports`
26 - Tests: `uv run pytest`
27
28## Discipline
29- Do not weaken mypy strict or add blanket `# type: ignore` to pass the gate.
30- Add a regression test under `tests/` when fixing a bug.
31- After adding/removing an `@mcp.tool`, regenerate the manifest:
32 `python scripts/gen_capabilities.py`.
33
@@ −1 +1 @@
1−# NSForge Agent Harness
1+---
2+paths:
3+ - "src/**/*.py"
4+ - "tests/**/*.py"
5+ - "scripts/**/*.py"
6+ - "pyproject.toml"
7+---
28
3−Workspace instructions for autonomous agents (Copilot, Cline, Codex, OpenHands,
4−Hermes, …) working in the **Neurosymbolic Forge (NSForge)** repository.
9+# Python Rules (uv / ruff / mypy / pytest)
510
6−## Goal
11+## Environment
12+- Use `uv` for running tools (avoid ad-hoc `pip`).
13+- Prefer `uv run ...` so checks execute in the right venv and dependency set.
714
8−Help build and operate NSForge — an MCP server that turns *concepts* into
9−verifiable, traceable *entities* (symbols → derivations → algorithms). The AI
10−orchestrates; deterministic tools reify. See
11−`docs/reification-ladder-direction.md` for the north star.
15+## Architecture Guardrails
16+- Keep `src/nsforge/domain` free of I/O, filesystem access, and infrastructure imports.
17+- Put orchestration/side-effects in `src/nsforge/application` or `src/nsforge/infrastructure`.
18+- MCP tool wiring lives in `src/nsforge_mcp/` (`server.py`, `tools/`).
1219
13−## North Star
20+## Validation Gates
21+- One command: `python scripts/check.py`
22+- Or individually:
23+ - Lint: `uv run ruff check .`
24+ - Format: `uv run ruff format --check .`
25+ - Types: `uv run mypy src --ignore-missing-imports`
26+ - Tests: `uv run pytest`
1427
15−> Every symbol / equation / value / line of code in a final result must have a
16−> tool call as its "birth certificate" (provenance). The AI must not hand-derive
17−> any of them.
18−
19−Success = the amount the AI computes by hand approaches zero.
20−
21−## Working Style
22−
23−- Use Traditional Chinese unless the user asks otherwise.
24−- Prefer exact file paths, command output summaries, and verification results.
25−- Offload mechanical/deterministic steps (symbolic calculation, simplification,
26− code generation) to tools — do not hand-derive formulas.
27−- When changing behavior, add a focused regression test under `tests/`.
28−
29−## Ground Truth: one command
30−
31−Before and after changes, verify against the green baseline:
32−
33−```bash
34−python scripts/check.py # all gates
35−python scripts/check.py --json # machine-readable summary (for agents)
36−python scripts/check.py --gates lint,type,test # subset
37−```
38−
39−Gates: lint, format, type, import, manifest, test, bench, generic, provenance, harness, diff. Exit code 0 = green.
40−(bench = derivation-correctness of `benchmarks/*.json` through the L3 orchestrator;
41−generic = arbitrary unseen compositions derive correctly, proving NSForge is a
42−derivation *calculus*, not a hand-built formula library; provenance = every
43−benchmark derivation carries a complete tool-provenance ledger, no hand-derived leaks;
44−harness = the harness self-checks its own invariants — version single-source,
45−self-describing tools, and gate/doc parity — so agents can trust the signal.)
46−
47−## Repo Layout (DDD)
48−
49−- `src/nsforge/domain/`: pure domain models/value objects (no I/O)
50−- `src/nsforge/application/`: use-cases / orchestration
51−- `src/nsforge/infrastructure/`: adapters (sympy engine, formula sources, file I/O)
52−- `src/nsforge_mcp/`: MCP tool layer + server wiring (`server.py`, `tools/`)
53−- `docs/agent/capabilities.json`: machine-readable tool manifest (self-describing)
54−
55−## Guardrails
56−
57−- Keep `src/nsforge/domain` free of I/O and infrastructure imports.
58−- Do not weaken `mypy` strict or skip gates just to make checks pass.
59−- Prefer `uv run ...` so tools use the project venv.
60−- Avoid destructive git ops (`reset --hard`, `clean -fdx`) unless asked.
61−- Never commit secrets or generated outputs (`dist/`, `.venv/`, `data/`).
28+## Discipline
29+- Do not weaken mypy strict or add blanket `# type: ignore` to pass the gate.
30+- Add a regression test under `tests/` when fixing a bug.
6231 - After adding/removing an `@mcp.tool`, regenerate the manifest:
6332 `python scripts/gen_capabilities.py`.
64−
65−## Related Files
66−
67−- `docs/reification-ladder-direction.md` — architecture direction
68−- `scripts/check.py` — verification harness (ground truth)
69−- `scripts/gen_capabilities.py` — capability manifest generator
70−- `.github/copilot-instructions.md` — Copilot rules
71−- `memory-bank/activeContext.md` — current focus
7233
