ultimate-pi 0.1.7 → 0.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.agents/skills/graphify/.graphify_version +1 -0
- package/.agents/skills/graphify/SKILL.md +1204 -0
- package/.agents/skills/wiki-autoresearch/SKILL.md +225 -97
- package/.agents/skills/wiki-autoresearch/references/program.md +28 -62
- package/.agents/skills/wiki-autoresearch/references/quality-sites.md +32 -0
- package/.env.example +5 -1
- package/.gitattributes +1 -0
- package/.github/workflows/publish-github-packages.yml +1 -1
- package/.pi/SYSTEM.md +72 -18
- package/.pi/agents/harness/adversary.md +32 -0
- package/.pi/agents/harness/evaluator.md +32 -0
- package/.pi/agents/harness/executor.md +34 -0
- package/.pi/agents/harness/meta-optimizer.md +33 -0
- package/.pi/agents/harness/planner.md +33 -0
- package/.pi/agents/harness/tie-breaker.md +35 -0
- package/.pi/agents/harness/trace-librarian.md +32 -0
- package/.pi/extensions/banner.png +0 -0
- package/.pi/extensions/budget-guard.ts +265 -0
- package/.pi/extensions/custom-footer.ts +194 -22
- package/.pi/extensions/custom-header.ts +47 -9
- package/.pi/extensions/debate-orchestrator.ts +479 -0
- package/.pi/extensions/harness-live-widget.ts +438 -0
- package/.pi/extensions/policy-gate.ts +349 -0
- package/.pi/extensions/review-integrity.ts +198 -0
- package/.pi/extensions/test-diff-integrity.ts +240 -0
- package/.pi/extensions/trace-recorder.ts +315 -0
- package/.pi/harness/README.md +23 -0
- package/.pi/harness/router/README.md +35 -0
- package/.pi/harness/router/apply-router-proposal.mjs +153 -0
- package/.pi/harness/router/propose-router-tuning.mjs +149 -0
- package/.pi/harness/specs/README.md +37 -0
- package/.pi/harness/specs/adversary-report.schema.json +53 -0
- package/.pi/harness/specs/budget-exhausted-event.schema.json +93 -0
- package/.pi/harness/specs/consensus-packet.schema.json +175 -0
- package/.pi/harness/specs/eval-verdict.schema.json +59 -0
- package/.pi/harness/specs/incident-record.schema.json +84 -0
- package/.pi/harness/specs/plan-packet.schema.json +90 -0
- package/.pi/harness/specs/round-result.schema.json +126 -0
- package/.pi/harness/specs/router-tuning-proposal.schema.json +114 -0
- package/.pi/harness/specs/run-trace.schema.json +107 -0
- package/.pi/lib/harness-ui-state.ts +311 -0
- package/.pi/mcp.json +4 -0
- package/.pi/model-router.json +93 -93
- package/.pi/prompts/graphify.md +23 -0
- package/.pi/prompts/harness-abort.md +41 -0
- package/.pi/prompts/harness-auto.md +83 -0
- package/.pi/prompts/harness-critic.md +52 -0
- package/.pi/prompts/harness-eval.md +51 -0
- package/.pi/prompts/harness-incident.md +51 -0
- package/.pi/prompts/harness-plan.md +64 -0
- package/.pi/prompts/harness-review.md +52 -0
- package/.pi/prompts/harness-router-tune.md +74 -0
- package/.pi/prompts/harness-run.md +59 -0
- package/.pi/prompts/harness-setup.md +316 -216
- package/.pi/prompts/harness-trace.md +51 -0
- package/.pi/prompts/wiki-autoresearch.md +9 -7
- package/.pi/prompts/wiki-save.md +20 -0
- package/.pi/skills/agent-router/SKILL.md +2 -4
- package/.pi/skills/ast-grep/SKILL.md +354 -0
- package/.pi/sounds/project-sounds.json +18 -24
- package/AGENTS.md +30 -0
- package/CHANGELOG.md +89 -0
- package/CONTRIBUTING.md +51 -1
- package/README.md +264 -20
- package/biome.json +8 -2
- package/lefthook.yml +3 -2
- package/node_modules/@sting8k/pi-vcc/README.md +200 -0
- package/node_modules/@sting8k/pi-vcc/index.ts +14 -0
- package/node_modules/@sting8k/pi-vcc/package.json +26 -0
- package/node_modules/@sting8k/pi-vcc/scripts/audit-sessions.ts +88 -0
- package/node_modules/@sting8k/pi-vcc/scripts/benchmark-real-sessions.ts +25 -0
- package/node_modules/@sting8k/pi-vcc/scripts/compare-before-after.ts +36 -0
- package/node_modules/@sting8k/pi-vcc/scripts/dump-branch-output.ts +20 -0
- package/node_modules/@sting8k/pi-vcc/src/commands/pi-vcc.ts +36 -0
- package/node_modules/@sting8k/pi-vcc/src/commands/vcc-recall.ts +65 -0
- package/node_modules/@sting8k/pi-vcc/src/core/brief.ts +381 -0
- package/node_modules/@sting8k/pi-vcc/src/core/build-sections.ts +79 -0
- package/node_modules/@sting8k/pi-vcc/src/core/content.ts +60 -0
- package/node_modules/@sting8k/pi-vcc/src/core/filter-noise.ts +42 -0
- package/node_modules/@sting8k/pi-vcc/src/core/format-recall.ts +27 -0
- package/node_modules/@sting8k/pi-vcc/src/core/format.ts +49 -0
- package/node_modules/@sting8k/pi-vcc/src/core/lineage.ts +26 -0
- package/node_modules/@sting8k/pi-vcc/src/core/load-messages.ts +41 -0
- package/node_modules/@sting8k/pi-vcc/src/core/normalize.ts +66 -0
- package/node_modules/@sting8k/pi-vcc/src/core/recall-scope.ts +14 -0
- package/node_modules/@sting8k/pi-vcc/src/core/render-entries.ts +55 -0
- package/node_modules/@sting8k/pi-vcc/src/core/report.ts +237 -0
- package/node_modules/@sting8k/pi-vcc/src/core/sanitize.ts +5 -0
- package/node_modules/@sting8k/pi-vcc/src/core/search-entries.ts +221 -0
- package/node_modules/@sting8k/pi-vcc/src/core/settings.ts +77 -0
- package/node_modules/@sting8k/pi-vcc/src/core/skill-collapse.ts +35 -0
- package/node_modules/@sting8k/pi-vcc/src/core/summarize.ts +157 -0
- package/node_modules/@sting8k/pi-vcc/src/core/tool-args.ts +14 -0
- package/node_modules/@sting8k/pi-vcc/src/details.ts +7 -0
- package/node_modules/@sting8k/pi-vcc/src/extract/commits.ts +69 -0
- package/node_modules/@sting8k/pi-vcc/src/extract/files.ts +80 -0
- package/node_modules/@sting8k/pi-vcc/src/extract/goals.ts +79 -0
- package/node_modules/@sting8k/pi-vcc/src/extract/preferences.ts +55 -0
- package/node_modules/@sting8k/pi-vcc/src/hooks/before-compact.ts +322 -0
- package/node_modules/@sting8k/pi-vcc/src/sections.ts +12 -0
- package/node_modules/@sting8k/pi-vcc/src/tools/recall.ts +109 -0
- package/node_modules/@sting8k/pi-vcc/src/types.ts +14 -0
- package/node_modules/@sting8k/pi-vcc/tests/before-compact-hook.test.ts +181 -0
- package/node_modules/@sting8k/pi-vcc/tests/before-compact.test.ts +140 -0
- package/node_modules/@sting8k/pi-vcc/tests/brief.test.ts +206 -0
- package/node_modules/@sting8k/pi-vcc/tests/build-sections.test.ts +59 -0
- package/node_modules/@sting8k/pi-vcc/tests/compile.test.ts +80 -0
- package/node_modules/@sting8k/pi-vcc/tests/content.test.ts +31 -0
- package/node_modules/@sting8k/pi-vcc/tests/extract-goals.test.ts +86 -0
- package/node_modules/@sting8k/pi-vcc/tests/extract-preferences.test.ts +30 -0
- package/node_modules/@sting8k/pi-vcc/tests/filter-noise.test.ts +61 -0
- package/node_modules/@sting8k/pi-vcc/tests/fixtures.ts +61 -0
- package/node_modules/@sting8k/pi-vcc/tests/format-recall.test.ts +30 -0
- package/node_modules/@sting8k/pi-vcc/tests/format.test.ts +62 -0
- package/node_modules/@sting8k/pi-vcc/tests/lineage.test.ts +33 -0
- package/node_modules/@sting8k/pi-vcc/tests/load-messages.test.ts +51 -0
- package/node_modules/@sting8k/pi-vcc/tests/normalize.test.ts +97 -0
- package/node_modules/@sting8k/pi-vcc/tests/real-sessions.test.ts +38 -0
- package/node_modules/@sting8k/pi-vcc/tests/recall-expand.test.ts +15 -0
- package/node_modules/@sting8k/pi-vcc/tests/recall-scope.test.ts +32 -0
- package/node_modules/@sting8k/pi-vcc/tests/recall-tool-scope.test.ts +67 -0
- package/node_modules/@sting8k/pi-vcc/tests/render-entries.test.ts +62 -0
- package/node_modules/@sting8k/pi-vcc/tests/report.test.ts +44 -0
- package/node_modules/@sting8k/pi-vcc/tests/sanitize.test.ts +24 -0
- package/node_modules/@sting8k/pi-vcc/tests/search-entries.test.ts +144 -0
- package/node_modules/@sting8k/pi-vcc/tests/support/load-session.ts +23 -0
- package/node_modules/@sting8k/pi-vcc/tests/support/real-sessions.ts +51 -0
- package/package.json +15 -4
- package/scripts/__pycache__/merge_graphify_corpora.cpython-314.pyc +0 -0
- package/scripts/index_youtube_urls.py +376 -0
- package/scripts/merge_graphify_corpora.py +398 -0
- package/scripts/regen_graphify_html.py +46 -0
- package/.agents/skills/defuddle/SKILL.md +0 -90
- package/.agents/skills/wiki/SKILL.md +0 -215
- package/.agents/skills/wiki/references/css-snippets.md +0 -122
- package/.agents/skills/wiki/references/frontmatter.md +0 -107
- package/.agents/skills/wiki/references/git-setup.md +0 -58
- package/.agents/skills/wiki/references/mcp-setup.md +0 -149
- package/.agents/skills/wiki/references/modes.md +0 -259
- package/.agents/skills/wiki/references/plugins.md +0 -96
- package/.agents/skills/wiki/references/rest-api.md +0 -124
- package/.agents/skills/wiki-fold/SKILL.md +0 -204
- package/.agents/skills/wiki-fold/references/fold-template.md +0 -133
- package/.agents/skills/wiki-ingest/SKILL.md +0 -288
- package/.agents/skills/wiki-lint/SKILL.md +0 -183
- package/.agents/skills/wiki-query/SKILL.md +0 -176
- package/.pi/agents/rethink.md +0 -140
- package/.pi/agents/wiki-ingest.md +0 -67
- package/.pi/agents/wiki-lint.md +0 -75
- package/.pi/internal/cursor-sdk-transcript-parser.ts +0 -59
- package/.pi/prompts/save.md +0 -16
- package/.pi/prompts/wiki.md +0 -23
- package/.pi/providers/cursor-sdk-provider.test.mjs +0 -476
- package/.pi/providers/cursor-sdk-provider.ts +0 -1085
- package/vault/AGENTS.md +0 -37
- package/vault/wiki/_templates/comparison.md +0 -39
- package/vault/wiki/_templates/concept.md +0 -40
- package/vault/wiki/_templates/decision.md +0 -21
- package/vault/wiki/_templates/entity.md +0 -32
- package/vault/wiki/_templates/flow.md +0 -14
- package/vault/wiki/_templates/module.md +0 -18
- package/vault/wiki/_templates/question.md +0 -31
- package/vault/wiki/_templates/source.md +0 -39
- package/vault/wiki/concepts/AST-Aware Code Chunking.md +0 -44
- package/vault/wiki/concepts/Build-Time Prompt Compilation.md +0 -107
- package/vault/wiki/concepts/Context Engine (AI Coding).md +0 -47
- package/vault/wiki/concepts/Context-Aware System Reminders.md +0 -61
- package/vault/wiki/concepts/Contextualized Text Embedding.md +0 -42
- package/vault/wiki/concepts/Contractor vs Employee AI Model.md +0 -55
- package/vault/wiki/concepts/Dual-Model Agent Architecture.md +0 -65
- package/vault/wiki/concepts/Late Chunking vs Early Chunking.md +0 -43
- package/vault/wiki/concepts/Majority Vote Ensembling.md +0 -68
- package/vault/wiki/concepts/Meta-Harness.md +0 -16
- package/vault/wiki/concepts/Multi-Agent AI Coding Architecture.md +0 -75
- package/vault/wiki/concepts/Prompt Enhancement.md +0 -90
- package/vault/wiki/concepts/Prompt Renderer.md +0 -89
- package/vault/wiki/concepts/Semantic Codebase Indexing.md +0 -67
- package/vault/wiki/concepts/additive-config-hierarchy.md +0 -16
- package/vault/wiki/concepts/agent-artifacts-verifiable-deliverables.md +0 -71
- package/vault/wiki/concepts/agent-browser-browser-automation.md +0 -99
- package/vault/wiki/concepts/agent-codebase-interface.md +0 -43
- package/vault/wiki/concepts/agent-harness-architecture.md +0 -67
- package/vault/wiki/concepts/agent-loop-detection-patterns.md +0 -133
- package/vault/wiki/concepts/agent-search-enforcement.md +0 -126
- package/vault/wiki/concepts/agent-skills-ecosystem.md +0 -74
- package/vault/wiki/concepts/agent-skills-pattern.md +0 -68
- package/vault/wiki/concepts/agentic-harness-context-enforcement.md +0 -91
- package/vault/wiki/concepts/agentic-harness.md +0 -34
- package/vault/wiki/concepts/agentic-orchestration-pipeline.md +0 -56
- package/vault/wiki/concepts/agentic-search-no-embeddings.md +0 -18
- package/vault/wiki/concepts/anthropic-context-engineering.md +0 -13
- package/vault/wiki/concepts/antigravity-agent-first-architecture.md +0 -61
- package/vault/wiki/concepts/ast-compression.md +0 -19
- package/vault/wiki/concepts/ast-truncation.md +0 -66
- package/vault/wiki/concepts/barrel-files.md +0 -37
- package/vault/wiki/concepts/browser-harness-agent.md +0 -41
- package/vault/wiki/concepts/browser-subagent-visual-verification.md +0 -82
- package/vault/wiki/concepts/codebase-intelligence-ecosystem-comparison.md +0 -192
- package/vault/wiki/concepts/codebase-intelligence-harness-integration.md +0 -161
- package/vault/wiki/concepts/codebase-to-context-ingestion.md +0 -46
- package/vault/wiki/concepts/codex-harness-innovations.md +0 -147
- package/vault/wiki/concepts/consensus-debate-flow.md +0 -17
- package/vault/wiki/concepts/consensus-debate.md +0 -206
- package/vault/wiki/concepts/content-addressed-spec-identity.md +0 -166
- package/vault/wiki/concepts/context-anxiety.md +0 -57
- package/vault/wiki/concepts/context-compression-techniques.md +0 -19
- package/vault/wiki/concepts/context-continuity.md +0 -22
- package/vault/wiki/concepts/context-drift-in-agents.md +0 -106
- package/vault/wiki/concepts/context-engineering.md +0 -62
- package/vault/wiki/concepts/context-folding.md +0 -67
- package/vault/wiki/concepts/context-mode.md +0 -38
- package/vault/wiki/concepts/cursor-harness-innovations.md +0 -107
- package/vault/wiki/concepts/deterministic-session-compaction.md +0 -79
- package/vault/wiki/concepts/drift-detection-unified.md +0 -296
- package/vault/wiki/concepts/execution-feedback-loop.md +0 -46
- package/vault/wiki/concepts/feedforward-feedback-harness.md +0 -60
- package/vault/wiki/concepts/five-root-cause-metrics-sentrux.md +0 -40
- package/vault/wiki/concepts/fork-safe-spec-storage.md +0 -89
- package/vault/wiki/concepts/fts5-sandbox.md +0 -19
- package/vault/wiki/concepts/fuzzy-edit-matching.md +0 -71
- package/vault/wiki/concepts/gemini-cli-architecture.md +0 -104
- package/vault/wiki/concepts/generator-evaluator-architecture.md +0 -64
- package/vault/wiki/concepts/guardian-agent-pattern.md +0 -67
- package/vault/wiki/concepts/harness-configuration-layers.md +0 -89
- package/vault/wiki/concepts/harness-control-frameworks.md +0 -155
- package/vault/wiki/concepts/harness-engineering-first-principles.md +0 -90
- package/vault/wiki/concepts/harness-h-formalism.md +0 -53
- package/vault/wiki/concepts/hybrid-code-search.md +0 -61
- package/vault/wiki/concepts/inline-post-edit-validation.md +0 -112
- package/vault/wiki/concepts/legendary-engineering-patterns-harness.md +0 -110
- package/vault/wiki/concepts/lifecycle-hooks.md +0 -94
- package/vault/wiki/concepts/mcp-tool-routing.md +0 -102
- package/vault/wiki/concepts/memory-system-of-record-vs-ephemeral-cache.md +0 -47
- package/vault/wiki/concepts/meta-agent-context-pruning.md +0 -151
- package/vault/wiki/concepts/model-adaptive-harness.md +0 -122
- package/vault/wiki/concepts/model-routing-agents.md +0 -101
- package/vault/wiki/concepts/monorepo-architecture.md +0 -45
- package/vault/wiki/concepts/multi-agent-specialization.md +0 -61
- package/vault/wiki/concepts/permission-subsystem.md +0 -16
- package/vault/wiki/concepts/pi-messenger-analysis.md +0 -243
- package/vault/wiki/concepts/pi-vscode-extension-landscape.md +0 -37
- package/vault/wiki/concepts/policy-engine-pattern.md +0 -78
- package/vault/wiki/concepts/progressive-disclosure-agents.md +0 -53
- package/vault/wiki/concepts/progressive-skill-disclosure.md +0 -17
- package/vault/wiki/concepts/provider-native-prompting.md +0 -203
- package/vault/wiki/concepts/quality-signal-sentrux.md +0 -37
- package/vault/wiki/concepts/repo-map-ranking.md +0 -42
- package/vault/wiki/concepts/result-monad-error-handling.md +0 -47
- package/vault/wiki/concepts/safety-defense-in-depth.md +0 -83
- package/vault/wiki/concepts/sandbox-os-enforcement.md +0 -18
- package/vault/wiki/concepts/selective-debate-routing.md +0 -70
- package/vault/wiki/concepts/self-evolving-harness.md +0 -60
- package/vault/wiki/concepts/sentrux-mcp-integration.md +0 -36
- package/vault/wiki/concepts/sentrux-rules-engine.md +0 -49
- package/vault/wiki/concepts/shell-pattern-compression.md +0 -24
- package/vault/wiki/concepts/skill-first-architecture.md +0 -166
- package/vault/wiki/concepts/structured-compaction.md +0 -78
- package/vault/wiki/concepts/subagent-orchestration.md +0 -17
- package/vault/wiki/concepts/subagent-worktree-isolation.md +0 -68
- package/vault/wiki/concepts/superpowers-methodology.md +0 -78
- package/vault/wiki/concepts/think-in-code.md +0 -73
- package/vault/wiki/concepts/ts-execution-layer.md +0 -100
- package/vault/wiki/concepts/typescript-strict-mode.md +0 -37
- package/vault/wiki/concepts/vcc-conversation-compaction-for-pi.md +0 -53
- package/vault/wiki/concepts/verification-drift-detection.md +0 -19
- package/vault/wiki/consensus/consensus-records.md +0 -58
- package/vault/wiki/decisions/2026-04-30-pi-lean-ctx-native.md +0 -122
- package/vault/wiki/decisions/2026-05-07-replace-lean-ctx-with-context-mode.md +0 -59
- package/vault/wiki/decisions/adr-008.md +0 -40
- package/vault/wiki/decisions/adr-009.md +0 -46
- package/vault/wiki/decisions/adr-010.md +0 -55
- package/vault/wiki/decisions/adr-011.md +0 -165
- package/vault/wiki/decisions/adr-012.md +0 -102
- package/vault/wiki/decisions/adr-013.md +0 -59
- package/vault/wiki/decisions/adr-014.md +0 -73
- package/vault/wiki/decisions/adr-015.md +0 -81
- package/vault/wiki/decisions/adr-016.md +0 -91
- package/vault/wiki/decisions/adr-017.md +0 -79
- package/vault/wiki/decisions/adr-018.md +0 -100
- package/vault/wiki/decisions/adr-019.md +0 -75
- package/vault/wiki/decisions/adr-020.md +0 -106
- package/vault/wiki/decisions/adr-021.md +0 -86
- package/vault/wiki/decisions/adr-022.md +0 -113
- package/vault/wiki/decisions/adr-023.md +0 -113
- package/vault/wiki/decisions/adr-024.md +0 -73
- package/vault/wiki/decisions/adr-025.md +0 -130
- package/vault/wiki/decisions/adr-026.md +0 -56
- package/vault/wiki/decisions/adr-027.md +0 -94
- package/vault/wiki/decisions/colocate-wiki.md +0 -34
- package/vault/wiki/entities/Anders Hejlsberg.md +0 -29
- package/vault/wiki/entities/Anthropic.md +0 -17
- package/vault/wiki/entities/Augment Code.md +0 -49
- package/vault/wiki/entities/Bjarne Stroustrup.md +0 -26
- package/vault/wiki/entities/Bolt.new (StackBlitz).md +0 -39
- package/vault/wiki/entities/Boris Cherny.md +0 -11
- package/vault/wiki/entities/Claude Code.md +0 -19
- package/vault/wiki/entities/Dennis Ritchie.md +0 -26
- package/vault/wiki/entities/Emergent Labs.md +0 -32
- package/vault/wiki/entities/Google Cloud.md +0 -16
- package/vault/wiki/entities/Guido van Rossum.md +0 -28
- package/vault/wiki/entities/Ken Thompson.md +0 -28
- package/vault/wiki/entities/Lee et al.md +0 -16
- package/vault/wiki/entities/Linus Torvalds.md +0 -28
- package/vault/wiki/entities/Lovable (company).md +0 -40
- package/vault/wiki/entities/Martin Fowler.md +0 -16
- package/vault/wiki/entities/Meng et al.md +0 -16
- package/vault/wiki/entities/OpenAI.md +0 -16
- package/vault/wiki/entities/Rocket.new.md +0 -38
- package/vault/wiki/entities/VILA-Lab.md +0 -15
- package/vault/wiki/entities/autodev-codebase.md +0 -18
- package/vault/wiki/entities/ck-tool.md +0 -59
- package/vault/wiki/entities/codesearch.md +0 -18
- package/vault/wiki/entities/disler-indydevdan.md +0 -33
- package/vault/wiki/entities/gsd-get-shit-done.md +0 -56
- package/vault/wiki/entities/javascript-runtimes.md +0 -48
- package/vault/wiki/entities/jesse-vincent.md +0 -38
- package/vault/wiki/entities/lean-ctx.md +0 -32
- package/vault/wiki/entities/opendev.md +0 -41
- package/vault/wiki/entities/ops-codegraph-tool.md +0 -18
- package/vault/wiki/entities/pi-coding-agent.md +0 -53
- package/vault/wiki/entities/sentrux.md +0 -54
- package/vault/wiki/entities/vgrep-tool.md +0 -57
- package/vault/wiki/entities/vitest.md +0 -41
- package/vault/wiki/flows/harness-wiki-pipeline.md +0 -204
- package/vault/wiki/hot.md +0 -932
- package/vault/wiki/index.md +0 -437
- package/vault/wiki/log.md +0 -422
- package/vault/wiki/meta/dashboard.md +0 -30
- package/vault/wiki/meta/lint-report-2026-04-30.md +0 -86
- package/vault/wiki/meta/lint-report-2026-05-02.md +0 -251
- package/vault/wiki/meta/overview.canvas +0 -43
- package/vault/wiki/modules/adversarial-verification.md +0 -57
- package/vault/wiki/modules/automated-observability.md +0 -54
- package/vault/wiki/modules/bench.md +0 -20
- package/vault/wiki/modules/extensions.md +0 -23
- package/vault/wiki/modules/grounding-checkpoints.md +0 -62
- package/vault/wiki/modules/harness-implementation-plan.md +0 -345
- package/vault/wiki/modules/harness-wiki-skill-mapping.md +0 -135
- package/vault/wiki/modules/harness.md +0 -86
- package/vault/wiki/modules/persistent-memory.md +0 -85
- package/vault/wiki/modules/schema-orchestration.md +0 -68
- package/vault/wiki/modules/skills.md +0 -27
- package/vault/wiki/modules/spec-hardening.md +0 -58
- package/vault/wiki/modules/structured-planning.md +0 -53
- package/vault/wiki/modules/think-in-code-enforcement.md +0 -153
- package/vault/wiki/modules/wiki-query-interface.md +0 -64
- package/vault/wiki/overview.md +0 -51
- package/vault/wiki/questions/Research-pi-vs-claude-code-agentic-orchestration-pipeline.md +0 -87
- package/vault/wiki/questions/Research-sentrux-dev.md +0 -123
- package/vault/wiki/questions/Research-superpowers-skill-for-agentic-coding-agents.md +0 -164
- package/vault/wiki/questions/Research: Augment Code Context Engine.md +0 -244
- package/vault/wiki/questions/Research: Automating Software Engineering - Lovable, Bolt, Emergent, Rocket.md +0 -112
- package/vault/wiki/questions/Research: Claude Code State-of-the-Art Harness Improvements.md +0 -209
- package/vault/wiki/questions/Research: Codex State-of-the-Art Harness Improvements.md +0 -99
- package/vault/wiki/questions/Research: Engineering Workflows of Legendary Programmers and AI Harness Mapping.md +0 -107
- package/vault/wiki/questions/Research: Fallow Codebase Intelligence Harness Integration.md +0 -72
- package/vault/wiki/questions/Research: Gemini CLI SOTA Harness Integration.md +0 -166
- package/vault/wiki/questions/Research: GitHub Issues as Harness Spec Storage.md +0 -188
- package/vault/wiki/questions/Research: Google Antigravity Harness Integration.md +0 -120
- package/vault/wiki/questions/Research: Meta-Agent Context Drift Detection.md +0 -236
- package/vault/wiki/questions/Research: Model-Adaptive Agent Harness Design.md +0 -95
- package/vault/wiki/questions/Research: Model-Specific Prompting Guides.md +0 -165
- package/vault/wiki/questions/Research: Prompt Renderer for Multi-Model Agent Harness.md +0 -216
- package/vault/wiki/questions/Research: Skill-First Harness Architecture.md +0 -91
- package/vault/wiki/questions/Research: TypeScript Best Practices and Codebase Structure.md +0 -88
- package/vault/wiki/questions/Research: TypeScript Execution Layer for Agent Tool Calling.md +0 -81
- package/vault/wiki/questions/Research: claude-mem over Obsidian for Harness Layer.md +0 -71
- package/vault/wiki/questions/Research: claude-mem over obsidian wiki as the knowledge base for our agentic harness pipeline. think from first principles. does this replace or complement our current setup? no hard feelings about previous decisions. gimme accurate points.md +0 -80
- package/vault/wiki/questions/Research: context-mode vs lean-ctx.md +0 -72
- package/vault/wiki/questions/Research: cursor.sh Harness Innovations.md +0 -92
- package/vault/wiki/questions/Research: executor.sh Harness Integration.md +0 -170
- package/vault/wiki/questions/Research: how GSD fits into our coding harness setup.md +0 -97
- package/vault/wiki/questions/Research: how claude-mem fits into our workflow. and whether it should replace obsidian in the codebase. no hard feelings about previous actions, rethink from first principles always.md +0 -80
- package/vault/wiki/questions/Research: pi-vcc.md +0 -113
- package/vault/wiki/questions/Research: semantic code search tools.md +0 -69
- package/vault/wiki/questions/Research: vcc extension for pi coding agent.md +0 -73
- package/vault/wiki/questions/how-to-enable-semantic-code-search-now.md +0 -111
- package/vault/wiki/questions/mvp-implementation-blueprint.md +0 -552
- package/vault/wiki/questions/research-agent-first-codebase-exploration.md +0 -199
- package/vault/wiki/questions/research-agentic-coding-harness-latest-papers.md +0 -142
- package/vault/wiki/questions/research-gitingest-gitreverse-integration.md +0 -100
- package/vault/wiki/questions/research-wozcode-token-reduction.md +0 -67
- package/vault/wiki/questions/resolved-context-pruning-inplace-vs-restart.md +0 -95
- package/vault/wiki/questions/resolved-context-window-economics.md +0 -167
- package/vault/wiki/questions/resolved-imad-debate-gating-transfer.md +0 -126
- package/vault/wiki/questions/resolved-mcp-tool-preference.md +0 -112
- package/vault/wiki/questions/resolved-small-model-meta-agents.md +0 -107
- package/vault/wiki/questions/resolved-treesitter-dynamic-languages.md +0 -95
- package/vault/wiki/sources/Auggie Context MCP Server.md +0 -63
- package/vault/wiki/sources/Augment Code Codacy AI Giants.md +0 -61
- package/vault/wiki/sources/Augment Code MCP SiliconAngle.md +0 -49
- package/vault/wiki/sources/Augment Code WorkOS ERC 2025.md +0 -55
- package/vault/wiki/sources/Augment Context Engine Official.md +0 -71
- package/vault/wiki/sources/Augment SWE-bench Agent GitHub.md +0 -74
- package/vault/wiki/sources/Augment SWE-bench Pro Blog.md +0 -58
- package/vault/wiki/sources/Source: AgentBus Jinja2 Prompt Pipelines.md +0 -75
- package/vault/wiki/sources/Source: Arxiv /342/200/224 Don't Break the Cache.md" +0 -85
- package/vault/wiki/sources/Source: Augment - Harness Engineering for AI Coding Agents.md +0 -58
- package/vault/wiki/sources/Source: Blake Crosley Agent Architecture Guide.md +0 -100
- package/vault/wiki/sources/Source: Bolt.new Architecture & Case Study.md +0 -75
- package/vault/wiki/sources/Source: Build-Time Prompt Compilation Architecture.md +0 -107
- package/vault/wiki/sources/Source: Claude API Agent Skills Overview.md +0 -70
- package/vault/wiki/sources/Source: Gemini CLI Changelogs.md +0 -88
- package/vault/wiki/sources/Source: Google Blog - Gemini CLI Announcement.md +0 -57
- package/vault/wiki/sources/Source: Google Gemini CLI Architecture Docs.md +0 -53
- package/vault/wiki/sources/Source: LangChain - Anatomy of Agent Harness.md +0 -65
- package/vault/wiki/sources/Source: Lovable Architecture & Clone Analysis.md +0 -83
- package/vault/wiki/sources/Source: Martin Fowler - Harness Engineering.md +0 -70
- package/vault/wiki/sources/Source: OpenAI Harness Engineering Five Principles.md +0 -58
- package/vault/wiki/sources/Source: OpenAI Harness Engineering /342/200/224 0 Lines of Human Code.md" +0 -101
- package/vault/wiki/sources/Source: OpenDev /342/200/224 Building AI Coding Agents for the Terminal.md" +0 -100
- package/vault/wiki/sources/Source: Render AI Coding Agents Benchmark 2025.md +0 -53
- package/vault/wiki/sources/Source: Rocket.new /342/200/224 Vibe Solutioning Platform.md" +0 -70
- package/vault/wiki/sources/Source: SwirlAI Agent Skills Progressive Disclosure.md +0 -71
- package/vault/wiki/sources/Source: TianPan Prompt Caching Architecture.md +0 -89
- package/vault/wiki/sources/Source: Vercel Labs agent-browser.md +0 -155
- package/vault/wiki/sources/Source: browser-harness CDP Harness.md +0 -126
- package/vault/wiki/sources/agent-drift-academic-paper.md +0 -79
- package/vault/wiki/sources/aider-repomap-tree-sitter.md +0 -42
- package/vault/wiki/sources/anthropic-compaction-api.md +0 -58
- package/vault/wiki/sources/anthropic-effective-harnesses.md +0 -42
- package/vault/wiki/sources/anthropic-prompt-best-practices.md +0 -100
- package/vault/wiki/sources/anthropic2026-harness-design.md +0 -63
- package/vault/wiki/sources/barrel-files-tkdodo.md +0 -38
- package/vault/wiki/sources/birth-of-unix-kernighan-interview.md +0 -57
- package/vault/wiki/sources/bockeler2026-harness-engineering.md +0 -69
- package/vault/wiki/sources/cast-code-chunking-paper.md +0 -50
- package/vault/wiki/sources/ck-semantic-search.md +0 -78
- package/vault/wiki/sources/claude-code-architecture-karaxai-2026.md +0 -71
- package/vault/wiki/sources/claude-code-architecture-qubytes-2026.md +0 -50
- package/vault/wiki/sources/claude-code-architecture-vila-lab-2026.md +0 -64
- package/vault/wiki/sources/claude-code-security-architecture-penligent-2026.md +0 -70
- package/vault/wiki/sources/claude-context-editing-docs.md +0 -13
- package/vault/wiki/sources/cloudflare-codemode.md +0 -63
- package/vault/wiki/sources/code-chunk-library-supermemory.md +0 -63
- package/vault/wiki/sources/codeact-apple-2024.md +0 -62
- package/vault/wiki/sources/codex-dsc-rfc-8573.md +0 -41
- package/vault/wiki/sources/codex-open-source-agent-2026.md +0 -110
- package/vault/wiki/sources/coir-code-retrieval-benchmark.md +0 -51
- package/vault/wiki/sources/colinmcnamara-context-optimization-codemode.md +0 -48
- package/vault/wiki/sources/context-folding-paper.md +0 -61
- package/vault/wiki/sources/context-mode-website.md +0 -63
- package/vault/wiki/sources/cursor-agent-best-practices-2026.md +0 -62
- package/vault/wiki/sources/cursor-fork-29b-2025.md +0 -50
- package/vault/wiki/sources/cursor-harness-april-2026.md +0 -76
- package/vault/wiki/sources/cursor-instant-apply-2024.md +0 -45
- package/vault/wiki/sources/cursor-shadow-workspace-2024.md +0 -52
- package/vault/wiki/sources/cursor-shipped-coding-agent-2026.md +0 -53
- package/vault/wiki/sources/cursor-vs-antigravity-2026.md +0 -51
- package/vault/wiki/sources/disler-pi-vs-claude-code.md +0 -69
- package/vault/wiki/sources/distill-deterministic-context-compression.md +0 -53
- package/vault/wiki/sources/embedding-models-benchmark-supermemory-2025.md +0 -48
- package/vault/wiki/sources/executor-rhyssullivan.md +0 -122
- package/vault/wiki/sources/fallow-rs-codebase-intelligence.md +0 -125
- package/vault/wiki/sources/fan2025-imad.md +0 -60
- package/vault/wiki/sources/forgecode-gpt5-agent-improvements.md +0 -63
- package/vault/wiki/sources/gemini-3-prompting-guide.md +0 -78
- package/vault/wiki/sources/gh-cli-sub-issue-rfc.md +0 -50
- package/vault/wiki/sources/gh-sub-issue-extension.md +0 -72
- package/vault/wiki/sources/github-fork-issues-discussion.md +0 -44
- package/vault/wiki/sources/github-issue-dependencies-docs.md +0 -49
- package/vault/wiki/sources/github-sub-issues-docs.md +0 -51
- package/vault/wiki/sources/gitingest.md +0 -91
- package/vault/wiki/sources/gitreverse.md +0 -63
- package/vault/wiki/sources/google-antigravity-official-blog.md +0 -47
- package/vault/wiki/sources/google-antigravity-wikipedia.md +0 -53
- package/vault/wiki/sources/gsd-codecentric-deep-dive.md +0 -57
- package/vault/wiki/sources/gsd-github-repo.md +0 -51
- package/vault/wiki/sources/gsd-hn-discussion.md +0 -59
- package/vault/wiki/sources/guido-python-design-philosophy.md +0 -56
- package/vault/wiki/sources/hejlsberg-7-learnings.md +0 -48
- package/vault/wiki/sources/ironclaw-drift-monitor.md +0 -80
- package/vault/wiki/sources/langsight-loop-detection.md +0 -80
- package/vault/wiki/sources/leanctx-website.md +0 -69
- package/vault/wiki/sources/lee2026-meta-harness.md +0 -59
- package/vault/wiki/sources/linux-kernel-coding-workflow.md +0 -50
- package/vault/wiki/sources/lou2026-autoharness.md +0 -53
- package/vault/wiki/sources/martin-fowler-harness-engineering.md +0 -73
- package/vault/wiki/sources/mcp-architecture-docs.md +0 -13
- package/vault/wiki/sources/meng2026-agent-harness-survey.md +0 -79
- package/vault/wiki/sources/mindstudio-four-agent-types.md +0 -68
- package/vault/wiki/sources/ms-chat-history-management.md +0 -13
- package/vault/wiki/sources/openai-prompt-guidance.md +0 -104
- package/vault/wiki/sources/openclaw-session-pruning.md +0 -13
- package/vault/wiki/sources/opencode-dcp.md +0 -13
- package/vault/wiki/sources/opendev-arxiv-2603.05344v1.md +0 -79
- package/vault/wiki/sources/openhands-platform.md +0 -39
- package/vault/wiki/sources/oss-guide-codebase-exploration.md +0 -53
- package/vault/wiki/sources/pi-compaction-extensions-ecosystem.md +0 -102
- package/vault/wiki/sources/pi-context-prune-github-repo.md +0 -38
- package/vault/wiki/sources/pi-mono-compaction-docs.md +0 -38
- package/vault/wiki/sources/pi-omni-compact-github-repo.md +0 -50
- package/vault/wiki/sources/pi-rtk-optimizer-github-repo.md +0 -45
- package/vault/wiki/sources/pi-vcc-github-repo.md +0 -69
- package/vault/wiki/sources/pi-vscode-marketplace.md +0 -41
- package/vault/wiki/sources/pi-vscode-model-provider-marketplace.md +0 -39
- package/vault/wiki/sources/py-tree-sitter.md +0 -13
- package/vault/wiki/sources/sentrux-dev-landing.md +0 -40
- package/vault/wiki/sources/sentrux-docs-pro-architecture.md +0 -75
- package/vault/wiki/sources/sentrux-docs-quality-signal.md +0 -46
- package/vault/wiki/sources/sentrux-docs-root-cause-metrics.md +0 -57
- package/vault/wiki/sources/sentrux-docs-rules-engine.md +0 -58
- package/vault/wiki/sources/sentrux-github-repo.md +0 -56
- package/vault/wiki/sources/superpowers-github-repo.md +0 -56
- package/vault/wiki/sources/superpowers-release-blog.md +0 -54
- package/vault/wiki/sources/superpowers-termdock-analysis.md +0 -45
- package/vault/wiki/sources/swe-agent-aci.md +0 -42
- package/vault/wiki/sources/swe-bench.md +0 -45
- package/vault/wiki/sources/swe-pruner-context-pruning.md +0 -13
- package/vault/wiki/sources/think-in-code-blog.md +0 -48
- package/vault/wiki/sources/tree-sitter-docs.md +0 -13
- package/vault/wiki/sources/ts-best-practices-2025-devto.md +0 -42
- package/vault/wiki/sources/ts-folder-structure-mingyang.md +0 -58
- package/vault/wiki/sources/ts-monorepo-koerselman.md +0 -44
- package/vault/wiki/sources/ts-result-error-handling-kkalamarski.md +0 -52
- package/vault/wiki/sources/ts-runtimes-comparison-betterstack.md +0 -42
- package/vault/wiki/sources/ts-strict-mode-rishikc.md +0 -43
- package/vault/wiki/sources/unix-philosophy.md +0 -48
- package/vault/wiki/sources/vectara-chunking-vs-embedding-naacl2025.md +0 -39
- package/vault/wiki/sources/vectara-guardian-agents.md +0 -79
- package/vault/wiki/sources/vgrep-semantic-search.md +0 -76
- package/vault/wiki/sources/vitest-official.md +0 -41
- package/vault/wiki/sources/vscode-pi-community-extension.md +0 -40
- package/vault/wiki/sources/wozcode.md +0 -79
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Query and summarize harness run traces for replay and forensics.
|
|
3
|
+
argument-hint: "--run <run-id> [--phase plan|execute|evaluate|adversary|merge]"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# harness-trace
|
|
7
|
+
|
|
8
|
+
Retrieve and summarize trace artifacts for a run.
|
|
9
|
+
|
|
10
|
+
## Step 0 — Parse arguments
|
|
11
|
+
|
|
12
|
+
Read `$ARGUMENTS` and parse:
|
|
13
|
+
|
|
14
|
+
- required: `--run <run-id>`
|
|
15
|
+
- optional: `--phase plan|execute|evaluate|adversary|merge`
|
|
16
|
+
|
|
17
|
+
If `--run` is missing, stop and return:
|
|
18
|
+
|
|
19
|
+
`Usage: /harness-trace --run <run-id> [--phase plan|execute|evaluate|adversary|merge]`
|
|
20
|
+
|
|
21
|
+
## Process
|
|
22
|
+
|
|
23
|
+
1. Collect run artifacts from canonical harness locations and provided trace refs.
|
|
24
|
+
2. Build phase timeline with policy and gate decision points.
|
|
25
|
+
3. Report completeness gaps against strict gate artifact requirements.
|
|
26
|
+
|
|
27
|
+
## Requirements
|
|
28
|
+
|
|
29
|
+
- Use `.pi/harness/runs/` and external trace references as source of truth pointers.
|
|
30
|
+
- Include phase timeline, artifact refs, and policy decisions.
|
|
31
|
+
- Highlight missing artifacts that violate strict gate requirements.
|
|
32
|
+
|
|
33
|
+
## Guardrails
|
|
34
|
+
|
|
35
|
+
- Do not overthink simple trace lookups; prioritize completeness and stable references.
|
|
36
|
+
- Only report artifacts for the requested run and optional phase filter.
|
|
37
|
+
- Never infer artifact existence without verifying source pointers.
|
|
38
|
+
|
|
39
|
+
## Output
|
|
40
|
+
|
|
41
|
+
- Replay-ready timeline summary.
|
|
42
|
+
- Artifact index (`plan`, `run`, `eval`, `adversary`, `consensus`, `incident`, `rollback`).
|
|
43
|
+
- Any integrity or completeness gaps.
|
|
44
|
+
|
|
45
|
+
## Completion behavior
|
|
46
|
+
|
|
47
|
+
Always end with:
|
|
48
|
+
|
|
49
|
+
- `trace_completeness` (`complete` or `incomplete`)
|
|
50
|
+
- missing artifact checklist (if any)
|
|
51
|
+
- most likely next command (`/harness-incident`, `/harness-review`, or `/harness-critic`)
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
description: Run an autonomous research loop on a topic. Searches the web, synthesizes findings, and
|
|
2
|
+
description: Run an autonomous research loop on a topic. Searches the web, synthesizes findings, and builds a knowledge graph via Graphify.
|
|
3
3
|
argument-hint: "[topic]"
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -10,10 +10,12 @@ Invocation arguments:
|
|
|
10
10
|
- If `$ARGUMENTS` is non-empty: treat it as explicit topic and use it verbatim.
|
|
11
11
|
- If `$ARGUMENTS` is empty: ask exactly "What topic should I research?"
|
|
12
12
|
|
|
13
|
-
Before starting
|
|
13
|
+
Before starting:
|
|
14
|
+
1. Read `skills/wiki-autoresearch/references/program.md` for research constraints.
|
|
15
|
+
2. Ensure `./raw/` directory exists for source storage.
|
|
16
|
+
3. Ensure Graphify is installed (`pip show graphifyy`).
|
|
14
17
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
Report how many pages were created and what the key findings are.
|
|
18
|
+
After research is complete:
|
|
19
|
+
1. Run `graphify ./raw --wiki --mode deep` to build the knowledge graph
|
|
20
|
+
2. Cleanup: remove `./raw/` since graphify has already ingested all data
|
|
21
|
+
3. Report: rounds, sources, graph nodes/edges, god nodes, surprising connections
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Save the current conversation or a specific insight as a structured note in the knowledge graph.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
Read the `graphify` skill for context on graphify-out/ structure.
|
|
6
|
+
|
|
7
|
+
Save the current conversation or requested insight as a markdown file in `./raw/`
|
|
8
|
+
so it can be graphified and queried. Then run `graphify ./raw --update` to
|
|
9
|
+
incorporate it into the knowledge graph.
|
|
10
|
+
|
|
11
|
+
Usage:
|
|
12
|
+
- `/save` — analyze the full conversation and save the most valuable content
|
|
13
|
+
- `/save [name]` — save with a specific note title
|
|
14
|
+
- `/save session` — save a complete session summary
|
|
15
|
+
- `/save decision [name]` — save as a design/governance decision (also mirror into `.pi/harness/incidents/` when incident tracking is required)
|
|
16
|
+
|
|
17
|
+
Save to: `./raw/[sanitized-name].md`
|
|
18
|
+
Then: `graphify ./raw --update`
|
|
19
|
+
|
|
20
|
+
If Graphify is not installed, say: "Graphify not installed. Run: pip install graphifyy && graphify install"
|
|
@@ -66,8 +66,8 @@ to re-read frontmatter for already-profiled agents.
|
|
|
66
66
|
| "create an agent" | Agent-related keywords in description |
|
|
67
67
|
| "Pi extension" / "Pi theme" | Pi component domain keywords |
|
|
68
68
|
| "rethink" / "first principles" | Prioritization keywords |
|
|
69
|
-
| "
|
|
70
|
-
| "
|
|
69
|
+
| "build knowledge graph" | Graphify keywords |
|
|
70
|
+
| "query the graph" | Graphify queries |
|
|
71
71
|
|
|
72
72
|
### Fuzzy Match — Semantic Fit
|
|
73
73
|
|
|
@@ -158,8 +158,6 @@ $ find .pi/agents -name '*.md' -type f
|
|
|
158
158
|
# .pi/agents/pi-pi/agent-expert.md
|
|
159
159
|
# .pi/agents/pi-pi/skill-expert.md
|
|
160
160
|
# .pi/agents/rethink.md
|
|
161
|
-
# .pi/agents/wiki-ingest.md
|
|
162
|
-
# .pi/agents/wiki-lint.md
|
|
163
161
|
|
|
164
162
|
# Then read each to understand capabilities
|
|
165
163
|
# Then match user task to the right agent(s)
|
|
@@ -0,0 +1,354 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ast-grep
|
|
3
|
+
description: "Structural code search using AST patterns via the `sg` CLI. Use when searching for code patterns, finding all call sites, locating function/class definitions, matching import structures, or any task where code shape matters not just text. Triggers on: find all usages, where is X called, find functions that, pattern search, structural search, AST search, find imports of, find class definitions, find methods with, codemod, rewrite code, refactor pattern, sg, ast-grep."
|
|
4
|
+
allowed-tools:
|
|
5
|
+
- Bash(sg *)
|
|
6
|
+
- Bash(npm install -g @ast-grep/cli)
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# ast-grep: Structural Code Search
|
|
10
|
+
|
|
11
|
+
Search code by structure, not text. `sg` uses tree-sitter to parse code into ASTs, then matches patterns against the tree. It understands code semantics — not just string matching.
|
|
12
|
+
|
|
13
|
+
## Install
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
npm install -g @ast-grep/cli
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
Verifies with `sg --version`.
|
|
20
|
+
|
|
21
|
+
## When to Use
|
|
22
|
+
|
|
23
|
+
| Task | Tool | Why |
|
|
24
|
+
|------|------|-----|
|
|
25
|
+
| Find code by structure/pattern | **ast-grep** (`sg`) | AST-aware — knows what is a function call vs a string |
|
|
26
|
+
| Find code by concept/meaning | graphify / ck | Semantic search, knowledge graph |
|
|
27
|
+
| Find exact literal string | `grep` | Only tool for non-code files or exact byte match |
|
|
28
|
+
| Explore architecture | graphify | Call graph, community detection |
|
|
29
|
+
|
|
30
|
+
**Rule:** For any code search involving patterns, signatures, or structure — use `sg` first. Reserve `grep` for exact literal strings in non-code files (configs, logs, markdown).
|
|
31
|
+
|
|
32
|
+
## Pattern Syntax
|
|
33
|
+
|
|
34
|
+
Patterns match code structure. Write code like you'd write it — `sg` parses it as AST.
|
|
35
|
+
|
|
36
|
+
### Metavariables
|
|
37
|
+
|
|
38
|
+
Prefix with `$` to match any expression, type, or identifier:
|
|
39
|
+
|
|
40
|
+
| Pattern | Matches |
|
|
41
|
+
|---------|---------|
|
|
42
|
+
| `$X` | Any single expression, identifier, or type |
|
|
43
|
+
| `$NAME` | Captures and names the match (use in rewrites) |
|
|
44
|
+
| `...` | Matches zero or more of anything (statements, args, etc.) |
|
|
45
|
+
| `$$...ARGS` | Captures multiple items as a list |
|
|
46
|
+
|
|
47
|
+
### Examples
|
|
48
|
+
|
|
49
|
+
```
|
|
50
|
+
# Any function call to `fetch` with any arguments
|
|
51
|
+
fetch($ARGS)
|
|
52
|
+
|
|
53
|
+
# Any function definition named `handle`
|
|
54
|
+
function handle($PARAMS) { ... }
|
|
55
|
+
|
|
56
|
+
# Any import from `react`
|
|
57
|
+
import $X from 'react'
|
|
58
|
+
|
|
59
|
+
# Any method call on `console`
|
|
60
|
+
console.$METHOD($ARGS)
|
|
61
|
+
|
|
62
|
+
# Any try-catch block
|
|
63
|
+
try { ... } catch ($ERR) { ... }
|
|
64
|
+
|
|
65
|
+
# Any class extending something
|
|
66
|
+
class $NAME extends $BASE { ... }
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
### Language Specification
|
|
70
|
+
|
|
71
|
+
`sg` auto-detects language from file extensions. Override explicitly:
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
sg -p 'pattern' -l ts # TypeScript
|
|
75
|
+
sg -p 'pattern' -l python # Python
|
|
76
|
+
sg -p 'pattern' -l go # Go
|
|
77
|
+
sg -p 'pattern' -l rust # Rust
|
|
78
|
+
sg -p 'pattern' -l java # Java
|
|
79
|
+
sg -p 'pattern' -l cpp # C++
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
Supported languages: TypeScript, JavaScript, Python, Go, Rust, Java, C, C++, C#, Ruby, Swift, Kotlin, Scala, PHP, HTML, CSS, JSON, YAML, and more (full tree-sitter grammar set).
|
|
83
|
+
|
|
84
|
+
## Quick Reference
|
|
85
|
+
|
|
86
|
+
```bash
|
|
87
|
+
# Search by pattern (auto-detects language)
|
|
88
|
+
sg -p 'pattern'
|
|
89
|
+
|
|
90
|
+
# Search with language explicit
|
|
91
|
+
sg -p 'pattern' -l ts
|
|
92
|
+
|
|
93
|
+
# Search specific directory
|
|
94
|
+
sg -p 'pattern' src/
|
|
95
|
+
|
|
96
|
+
# Search with glob filter
|
|
97
|
+
sg -p 'pattern' --include '*.ts'
|
|
98
|
+
|
|
99
|
+
# Show context lines
|
|
100
|
+
sg -p 'pattern' -A 3 # 3 lines after
|
|
101
|
+
sg -p 'pattern' -B 3 # 3 lines before
|
|
102
|
+
sg -p 'pattern' -C 3 # 3 lines before and after
|
|
103
|
+
|
|
104
|
+
# List matching files only
|
|
105
|
+
sg -p 'pattern' --json | jq -r '.[].file' | sort -u
|
|
106
|
+
|
|
107
|
+
# Count matches
|
|
108
|
+
sg -p 'pattern' | wc -l
|
|
109
|
+
|
|
110
|
+
# Interactive selection (fuzzy picker)
|
|
111
|
+
sg -p 'pattern' --interactive
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
## Common Patterns
|
|
115
|
+
|
|
116
|
+
### Find all call sites of a function
|
|
117
|
+
|
|
118
|
+
```bash
|
|
119
|
+
# Who calls `processPayment`?
|
|
120
|
+
sg -p 'processPayment($ARGS)'
|
|
121
|
+
|
|
122
|
+
# Who calls `console.log`?
|
|
123
|
+
sg -p 'console.log($ARGS)'
|
|
124
|
+
|
|
125
|
+
# Who calls any method on `db`?
|
|
126
|
+
sg -p 'db.$METHOD($ARGS)'
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
### Find function/method definitions
|
|
130
|
+
|
|
131
|
+
```bash
|
|
132
|
+
# All async function definitions
|
|
133
|
+
sg -p 'async function $NAME($PARAMS) { ... }'
|
|
134
|
+
|
|
135
|
+
# All method definitions in a class (TS)
|
|
136
|
+
sg -p '$VISIBILITY $NAME($PARAMS) { ... }' -l ts
|
|
137
|
+
|
|
138
|
+
# All arrow functions assigned to const
|
|
139
|
+
sg -p 'const $NAME = ($PARAMS) => $BODY'
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
### Find imports
|
|
143
|
+
|
|
144
|
+
```bash
|
|
145
|
+
# Default import from specific module
|
|
146
|
+
sg -p 'import $X from "lodash"'
|
|
147
|
+
|
|
148
|
+
# Named imports
|
|
149
|
+
sg -p 'import { $NAMES } from "react"'
|
|
150
|
+
|
|
151
|
+
# Any import from a module
|
|
152
|
+
sg -p 'import * from "axios"'
|
|
153
|
+
|
|
154
|
+
# Dynamic imports
|
|
155
|
+
sg -p 'import($MODULE)'
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
### Find class definitions
|
|
159
|
+
|
|
160
|
+
```bash
|
|
161
|
+
# All class definitions
|
|
162
|
+
sg -p 'class $NAME { ... }'
|
|
163
|
+
|
|
164
|
+
# Classes extending a specific base
|
|
165
|
+
sg -p 'class $NAME extends Error { ... }'
|
|
166
|
+
|
|
167
|
+
# Classes with specific decorator
|
|
168
|
+
sg -p '@$DECORATOR(...) class $NAME { ... }'
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
### Find specific patterns
|
|
172
|
+
|
|
173
|
+
```bash
|
|
174
|
+
# All try-catch blocks
|
|
175
|
+
sg -p 'try { ... } catch ($E) { ... }'
|
|
176
|
+
|
|
177
|
+
# All useEffect calls (React)
|
|
178
|
+
sg -p 'useEffect(() => { ... }, [$DEPS])'
|
|
179
|
+
|
|
180
|
+
# All await expressions
|
|
181
|
+
sg -p 'await $EXPR'
|
|
182
|
+
|
|
183
|
+
# All error throws
|
|
184
|
+
sg -p 'throw new $ERR($ARGS)'
|
|
185
|
+
|
|
186
|
+
# All object destructuring
|
|
187
|
+
sg -p 'const { $PROPS } = $OBJ'
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
### Find and replace (codemods)
|
|
191
|
+
|
|
192
|
+
```bash
|
|
193
|
+
# Preview rewrite (dry run)
|
|
194
|
+
sg -p 'oldPattern($X)' --rewrite 'newPattern($X)' --dry-run
|
|
195
|
+
|
|
196
|
+
# Execute rewrite
|
|
197
|
+
sg -p 'oldPattern($X)' --rewrite 'newPattern($X)'
|
|
198
|
+
|
|
199
|
+
# Rewrite with language explicit
|
|
200
|
+
sg -p 'console.log($MSG)' --rewrite 'logger.info($MSG)' -l ts
|
|
201
|
+
|
|
202
|
+
# Rewrite across project using rules (see sgconfig.yml below)
|
|
203
|
+
sg scan
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
## Project Rules with sgconfig.yml
|
|
207
|
+
|
|
208
|
+
For project-wide pattern enforcement, create `sgconfig.yml` at project root:
|
|
209
|
+
|
|
210
|
+
```yaml
|
|
211
|
+
# sgconfig.yml
|
|
212
|
+
ruleDirs:
|
|
213
|
+
- .sg/rules
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
Then create rule files in `.sg/rules/`:
|
|
217
|
+
|
|
218
|
+
```yaml
|
|
219
|
+
# .sg/rules/no-console-log.yml
|
|
220
|
+
id: no-console-log
|
|
221
|
+
language: TypeScript
|
|
222
|
+
severity: warning
|
|
223
|
+
rule:
|
|
224
|
+
pattern: console.log($ARGS)
|
|
225
|
+
fix: logger.debug($ARGS)
|
|
226
|
+
message: "Use logger.debug instead of console.log"
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
```yaml
|
|
230
|
+
# .sg/rules/require-await.yml
|
|
231
|
+
id: no-floating-promises
|
|
232
|
+
language: TypeScript
|
|
233
|
+
severity: error
|
|
234
|
+
rule:
|
|
235
|
+
pattern: $FUNC($ARGS)
|
|
236
|
+
not:
|
|
237
|
+
pattern: await $FUNC($ARGS)
|
|
238
|
+
inside:
|
|
239
|
+
kind: function_declaration
|
|
240
|
+
stopBy: end
|
|
241
|
+
message: "Promise returned by $FUNC is not awaited"
|
|
242
|
+
```
|
|
243
|
+
|
|
244
|
+
```yaml
|
|
245
|
+
# .sg/rules/no-any.yml
|
|
246
|
+
id: no-explicit-any
|
|
247
|
+
language: TypeScript
|
|
248
|
+
severity: warning
|
|
249
|
+
rule:
|
|
250
|
+
pattern: any
|
|
251
|
+
message: "Avoid using 'any' type — use unknown or a specific type"
|
|
252
|
+
```
|
|
253
|
+
|
|
254
|
+
Run rules:
|
|
255
|
+
|
|
256
|
+
```bash
|
|
257
|
+
# Scan all rules in sgconfig.yml
|
|
258
|
+
sg scan
|
|
259
|
+
|
|
260
|
+
# Scan specific rule
|
|
261
|
+
sg scan --rule .sg/rules/no-console-log.yml
|
|
262
|
+
|
|
263
|
+
# Scan specific directory
|
|
264
|
+
sg scan src/
|
|
265
|
+
```
|
|
266
|
+
|
|
267
|
+
### Rule Structure
|
|
268
|
+
|
|
269
|
+
Every rule file is YAML with these fields:
|
|
270
|
+
|
|
271
|
+
| Field | Required | Purpose |
|
|
272
|
+
|-------|----------|---------|
|
|
273
|
+
| `id` | Yes | Unique rule identifier (kebab-case) |
|
|
274
|
+
| `language` | Yes | Language to match (TypeScript, Python, Go, etc.) |
|
|
275
|
+
| `severity` | Yes | `error`, `warning`, `hint`, `info` |
|
|
276
|
+
| `rule` | Yes | The pattern to match (supports `pattern`, `not`, `inside`, `has`, `follows`, `all`, `any`) |
|
|
277
|
+
| `message` | Yes | Human-readable explanation |
|
|
278
|
+
| `fix` | No | Rewrite template (uses same metavariables) |
|
|
279
|
+
|
|
280
|
+
### Composite Rule Matchers
|
|
281
|
+
|
|
282
|
+
```yaml
|
|
283
|
+
# Match ALL conditions
|
|
284
|
+
rule:
|
|
285
|
+
all:
|
|
286
|
+
- pattern: console.log($X)
|
|
287
|
+
- inside:
|
|
288
|
+
kind: function_declaration
|
|
289
|
+
|
|
290
|
+
# Match ANY condition
|
|
291
|
+
rule:
|
|
292
|
+
any:
|
|
293
|
+
- pattern: console.log($X)
|
|
294
|
+
- pattern: console.warn($X)
|
|
295
|
+
|
|
296
|
+
# Exclude matches
|
|
297
|
+
rule:
|
|
298
|
+
pattern: fetch($URL)
|
|
299
|
+
not:
|
|
300
|
+
pattern: fetch($URL, { init: $INIT })
|
|
301
|
+
|
|
302
|
+
# Must be inside specific AST node
|
|
303
|
+
rule:
|
|
304
|
+
pattern: $CALL($ARGS)
|
|
305
|
+
inside:
|
|
306
|
+
kind: try_statement
|
|
307
|
+
|
|
308
|
+
# Must follow another pattern
|
|
309
|
+
rule:
|
|
310
|
+
pattern: $X.close()
|
|
311
|
+
follows:
|
|
312
|
+
pattern: $X.open()
|
|
313
|
+
```
|
|
314
|
+
|
|
315
|
+
## Search Decision Flow
|
|
316
|
+
|
|
317
|
+
```
|
|
318
|
+
Need to find code
|
|
319
|
+
├─ Structural pattern (function calls, imports, classes)? → sg -p 'pattern'
|
|
320
|
+
├─ Rewrite/codemod needed? → sg -p 'old' --rewrite 'new'
|
|
321
|
+
├─ Project-wide lint rule? → sg scan (with sgconfig.yml)
|
|
322
|
+
├─ Conceptual/semantic search? → graphify query or ck --hybrid
|
|
323
|
+
├─ Explore architecture? → graphify
|
|
324
|
+
└─ Exact literal string in non-code? → grep
|
|
325
|
+
```
|
|
326
|
+
|
|
327
|
+
## Output Formats
|
|
328
|
+
|
|
329
|
+
```bash
|
|
330
|
+
# Default (grep-compatible): file:line:column: match
|
|
331
|
+
sg -p 'pattern'
|
|
332
|
+
|
|
333
|
+
# JSON (for piping/automation)
|
|
334
|
+
sg -p 'pattern' --json
|
|
335
|
+
|
|
336
|
+
# Only file paths (deduplicated)
|
|
337
|
+
sg -p 'pattern' --json | jq -r '.[].file' | sort -u
|
|
338
|
+
```
|
|
339
|
+
|
|
340
|
+
## Tips
|
|
341
|
+
|
|
342
|
+
- **Metavariables are greedy by default.** `$X` matches the smallest valid AST node. Use `$$$X` to match multiple nodes.
|
|
343
|
+
- **`...` matches zero or more.** Inside function body `{ ... }` matches any statements. In call args `fn(...)` matches any number of arguments.
|
|
344
|
+
- **Pattern must be valid code for the target language.** `sg` parses the pattern itself as AST.
|
|
345
|
+
- **Use `--json` for automation.** Parse results programmatically instead of grepping output.
|
|
346
|
+
- **Combine with find for scoped searches.** `find src/ -name '*.ts' -exec sg -p 'pattern' {} +`
|
|
347
|
+
- **Rules compose.** Multiple rules in `sgconfig.yml` run together with `sg scan`.
|
|
348
|
+
|
|
349
|
+
## Integration with Pi Workflow
|
|
350
|
+
|
|
351
|
+
1. **Before grep on code files** — consider if `sg -p` would be more precise.
|
|
352
|
+
2. **After graphify identifies a node** — use `sg` to find all call sites or definitions.
|
|
353
|
+
3. **For refactoring tasks** — use `sg -p ... --rewrite ...` for safe structural rewrites.
|
|
354
|
+
4. **For code review** — run `sg scan` with project rules to catch anti-patterns.
|
|
@@ -1,25 +1,19 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
],
|
|
21
|
-
"reminder": [
|
|
22
|
-
"reminder/1-soft-notification-track.mp3"
|
|
23
|
-
]
|
|
24
|
-
}
|
|
25
|
-
}
|
|
2
|
+
"themeName": "ultimate-pi-custom",
|
|
3
|
+
"randomizeSounds": true,
|
|
4
|
+
"sounds": {
|
|
5
|
+
"success": [
|
|
6
|
+
"success/1-tada-track.mp3",
|
|
7
|
+
"success/2-jobs-done-track.mp3",
|
|
8
|
+
"success/3-yay-track.mp3"
|
|
9
|
+
],
|
|
10
|
+
"error": [
|
|
11
|
+
"error/1-ksi-wth-track.mp3",
|
|
12
|
+
"error/2-smash-track.mp3",
|
|
13
|
+
"error/3-buzzer-track.mp3"
|
|
14
|
+
],
|
|
15
|
+
"alert": ["alert/1-kaching-track.mp3"],
|
|
16
|
+
"notification": ["notification/1-soft-notification-track.mp3"],
|
|
17
|
+
"reminder": ["reminder/1-soft-notification-track.mp3"]
|
|
18
|
+
}
|
|
19
|
+
}
|
package/AGENTS.md
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# ultimate-pi: Agentic Harness
|
|
2
|
+
|
|
3
|
+
Purpose: Agentic coding harness — architecture, research, decisions, implementation.
|
|
4
|
+
Owner: pi-mono + user
|
|
5
|
+
Created: 2026-05-14
|
|
6
|
+
|
|
7
|
+
## Structure
|
|
8
|
+
|
|
9
|
+
- graphify-out/ → Knowledge graph (run `graphify update .` to build)
|
|
10
|
+
- ./raw/ → Source documents for graphify ingestion
|
|
11
|
+
- docs/adr/ → Architectural Decision Records
|
|
12
|
+
- .pi/skills/ → Agent skills
|
|
13
|
+
- .pi/agents/ → Specialized agents
|
|
14
|
+
|
|
15
|
+
## Graphify-First Workflow
|
|
16
|
+
|
|
17
|
+
1. Run `graphify update .` to build/update the knowledge graph
|
|
18
|
+
2. Read `graphify-out/GRAPH_REPORT.md` for god nodes and surprising connections
|
|
19
|
+
3. Query: `graphify query "question"`
|
|
20
|
+
4. Explain: `graphify explain "Concept"` for caller/callee traces
|
|
21
|
+
5. ADRs stored in `docs/adr/`
|
|
22
|
+
|
|
23
|
+
## Conventions
|
|
24
|
+
|
|
25
|
+
- Graph before grep — always consult the knowledge graph first
|
|
26
|
+
- ./raw/ is source storage for graphify
|
|
27
|
+
- ADRs in docs/adr/ with structured format
|
|
28
|
+
- `graphify update .` after significant code changes
|
|
29
|
+
- ast-grep (`sg`) is the default code search tool — use `sg -p 'pattern'` for structural search, never grep for code
|
|
30
|
+
- Self-hosted Firecrawl at http://localhost:3002 (FIRECRAWL_API_URL)
|
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,95 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project are documented in this file.
|
|
4
4
|
|
|
5
|
+
## [v0.2.2] — 2026-05-15
|
|
6
|
+
|
|
7
|
+
### 🔧 Chores
|
|
8
|
+
|
|
9
|
+
- trim npm bundle and declare bundled deps
|
|
10
|
+
- refresh generated artifacts
|
|
11
|
+
|
|
12
|
+
## [v0.2.1] — 2026-05-15
|
|
13
|
+
|
|
14
|
+
### 🐛 Fixes
|
|
15
|
+
|
|
16
|
+
- default to flow mode and soften budget gates
|
|
17
|
+
|
|
18
|
+
### 🔧 Chores
|
|
19
|
+
|
|
20
|
+
- sync generated report and graph artifacts
|
|
21
|
+
- refresh rebuild lock metadata
|
|
22
|
+
- update install instructions and refresh graph artifacts
|
|
23
|
+
|
|
24
|
+
## [v0.2.0] — 2026-05-15
|
|
25
|
+
|
|
26
|
+
### ✨ Features
|
|
27
|
+
|
|
28
|
+
- update extension banner and custom header
|
|
29
|
+
- add abort flow and safer live widget rendering
|
|
30
|
+
- add orchestration stack and banner compatibility
|
|
31
|
+
- router-aware custom footer with profile colors
|
|
32
|
+
- gitignore model-router.json and generate dynamically from env
|
|
33
|
+
- merge books & YT corpora, add merge scripts, up viz cap to 200K
|
|
34
|
+
- add research papers and graphify knowledge graph outputs
|
|
35
|
+
- add skill and rebuild knowledge graph
|
|
36
|
+
- ingest Gleeson Musk first-principles prompts thread
|
|
37
|
+
- add books corpus knowledge graph with cross-book linking
|
|
38
|
+
- integrate ast-grep as primary code search tool
|
|
39
|
+
- add sentrux architectural quality gate integration
|
|
40
|
+
|
|
41
|
+
### 🐛 Fixes
|
|
42
|
+
|
|
43
|
+
- consolidate outputs into graphify-out/, prevent root duplication
|
|
44
|
+
- add --ignore-scripts to npm publish in GitHub Packages workflow
|
|
45
|
+
|
|
46
|
+
### ♻️ Refactoring
|
|
47
|
+
|
|
48
|
+
- migrate from Obsidian wiki to Graphify knowledge graph
|
|
49
|
+
|
|
50
|
+
### 📖 Documentation
|
|
51
|
+
|
|
52
|
+
- add beginner-friendly harness user guide
|
|
53
|
+
- label all 428 communities, regenerate report and HTML
|
|
54
|
+
|
|
55
|
+
### 🎨 Style
|
|
56
|
+
|
|
57
|
+
- apply linter formatting (tab indent)
|
|
58
|
+
|
|
59
|
+
### 🔧 Chores
|
|
60
|
+
|
|
61
|
+
- refresh generated graph artifacts
|
|
62
|
+
- align graphify skill source to project-local path
|
|
63
|
+
- include latest post-commit graph rebuild outputs
|
|
64
|
+
- refresh generated graph and harness run artifacts
|
|
65
|
+
- remove redundant internal code
|
|
66
|
+
- refresh generated graph artifacts
|
|
67
|
+
- remove rethink agent, add youtube video catalog
|
|
68
|
+
- index NEA × Namespace CI/CD / continuous compute YouTube talk
|
|
69
|
+
- remove graphify-books-corpus aigleeson musk prompts markdown file
|
|
70
|
+
- rename data/yt-vid to data/youtube-transcripts
|
|
71
|
+
- align graphify outputs with data/books corpus paths
|
|
72
|
+
- add data/ corpus: books (Git LFS) and yt-vid transcripts
|
|
73
|
+
- add reusable YouTube transcript indexer (yt-dlp + Firecrawl CLI)
|
|
74
|
+
- re-format includes array as multi-line
|
|
75
|
+
- exclude graphify-books-out/ from lint/format
|
|
76
|
+
- accept remote graphify-out artifacts, remove cache/ from tracking (gitignored)
|
|
77
|
+
- add graphify-out/cache/ to .gitignore
|
|
78
|
+
- update wiki docs
|
|
79
|
+
- update wiki docs
|
|
80
|
+
- update wiki docs
|
|
81
|
+
- update wiki docs
|
|
82
|
+
- update wiki docs
|
|
83
|
+
- update wiki docs
|
|
84
|
+
- update wiki docs
|
|
85
|
+
- update wiki docs
|
|
86
|
+
- update wiki docs
|
|
87
|
+
- update wiki docs
|
|
88
|
+
- fix biome ignore pattern: !graphify-out
|
|
89
|
+
- ignore graphify-out from biome lint
|
|
90
|
+
- update knowledge graph caches after background rebuild
|
|
91
|
+
- remove wiki skills superseded by graphify
|
|
92
|
+
- remove defuddle-cli and defuddle skill references (firecrawl covers same)
|
|
93
|
+
|
|
5
94
|
## [v0.1.7] — 2026-05-07
|
|
6
95
|
|
|
7
96
|
### ✨ Features
|