ultimate-pi 0.1.2 → 0.1.4
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/ck-search/SKILL.md +99 -0
- package/.agents/skills/defuddle/SKILL.md +90 -0
- package/.agents/skills/find-skills/SKILL.md +142 -0
- package/.agents/skills/firecrawl/SKILL.md +150 -0
- package/.agents/skills/firecrawl/rules/install.md +82 -0
- package/.agents/skills/firecrawl/rules/security.md +26 -0
- package/.agents/skills/firecrawl-agent/SKILL.md +57 -0
- package/.agents/skills/firecrawl-build-interact/SKILL.md +67 -0
- package/.agents/skills/firecrawl-build-onboarding/SKILL.md +102 -0
- package/.agents/skills/firecrawl-build-onboarding/references/auth-flow.md +39 -0
- package/.agents/skills/firecrawl-build-onboarding/references/project-setup.md +20 -0
- package/.agents/skills/firecrawl-build-onboarding/references/sdk-installation.md +17 -0
- package/.agents/skills/firecrawl-build-scrape/SKILL.md +68 -0
- package/.agents/skills/firecrawl-build-search/SKILL.md +68 -0
- package/.agents/skills/firecrawl-crawl/SKILL.md +58 -0
- package/.agents/skills/firecrawl-download/SKILL.md +69 -0
- package/.agents/skills/firecrawl-interact/SKILL.md +83 -0
- package/.agents/skills/firecrawl-map/SKILL.md +50 -0
- package/.agents/skills/firecrawl-parse/SKILL.md +61 -0
- package/.agents/skills/firecrawl-scrape/SKILL.md +68 -0
- package/.agents/skills/firecrawl-search/SKILL.md +59 -0
- package/.agents/skills/obsidian-bases/SKILL.md +299 -0
- package/.agents/skills/obsidian-markdown/SKILL.md +237 -0
- package/.agents/skills/posthog-analyst/SKILL.md +306 -0
- package/.agents/skills/posthog-analyst/evals/evals.json +23 -0
- package/.agents/skills/wiki/SKILL.md +215 -0
- package/.agents/skills/wiki/references/css-snippets.md +122 -0
- package/.agents/skills/wiki/references/frontmatter.md +107 -0
- package/.agents/skills/wiki/references/git-setup.md +58 -0
- package/.agents/skills/wiki/references/mcp-setup.md +149 -0
- package/.agents/skills/wiki/references/modes.md +259 -0
- package/.agents/skills/wiki/references/plugins.md +96 -0
- package/.agents/skills/wiki/references/rest-api.md +124 -0
- package/.agents/skills/wiki-autoresearch/SKILL.md +211 -0
- package/.agents/skills/wiki-autoresearch/references/program.md +75 -0
- package/.agents/skills/wiki-fold/SKILL.md +204 -0
- package/.agents/skills/wiki-fold/references/fold-template.md +133 -0
- package/.agents/skills/wiki-ingest/SKILL.md +288 -0
- package/.agents/skills/wiki-lint/SKILL.md +183 -0
- package/.agents/skills/wiki-query/SKILL.md +176 -0
- package/.agents/skills/wiki-save/SKILL.md +128 -0
- package/.ckignore +41 -0
- package/.env.example +9 -0
- package/.github/workflows/lint.yml +33 -0
- package/.github/workflows/publish-github-packages.yml +35 -0
- package/.github/workflows/publish-npm.yml +1 -1
- package/.pi/SYSTEM.md +107 -40
- package/.pi/agents/pi-pi/agent-expert.md +205 -0
- package/.pi/agents/pi-pi/cli-expert.md +47 -0
- package/.pi/agents/pi-pi/config-expert.md +67 -0
- package/.pi/agents/pi-pi/ext-expert.md +53 -0
- package/.pi/agents/pi-pi/keybinding-expert.md +123 -0
- package/.pi/agents/pi-pi/pi-orchestrator.md +103 -0
- package/.pi/agents/pi-pi/prompt-expert.md +83 -0
- package/.pi/agents/pi-pi/skill-expert.md +52 -0
- package/.pi/agents/pi-pi/theme-expert.md +46 -0
- package/.pi/agents/pi-pi/tui-expert.md +100 -0
- package/.pi/agents/rethink.md +140 -0
- package/.pi/agents/wiki-ingest.md +67 -0
- package/.pi/agents/wiki-lint.md +75 -0
- package/.pi/auto-commit.json +20 -0
- package/.pi/extensions/banner.png +0 -0
- package/.pi/extensions/ck-enforce.ts +216 -0
- package/.pi/extensions/custom-footer.ts +308 -0
- package/.pi/extensions/custom-header.ts +116 -0
- package/.pi/extensions/dotenv-loader.ts +170 -0
- package/.pi/internal/cursor-sdk-transcript-parser.ts +59 -0
- package/.pi/model-router.json +95 -0
- package/.pi/npm/.gitignore +2 -0
- package/.pi/prompts/git-sync.md +124 -0
- package/.pi/prompts/harness-setup.md +509 -0
- package/.pi/prompts/save.md +16 -0
- package/.pi/prompts/wiki-autoresearch.md +19 -0
- package/.pi/prompts/wiki.md +23 -0
- package/.pi/providers/cursor-sdk-provider.test.mjs +476 -0
- package/.pi/providers/cursor-sdk-provider.ts +1085 -0
- package/.pi/settings.json +14 -4
- package/.pi/skills/agent-router/SKILL.md +174 -0
- package/.pi/sounds/alert/1-kaching-track.mp3 +0 -0
- package/.pi/sounds/error/1-ksi-wth-track.mp3 +0 -0
- package/.pi/sounds/error/2-smash-track.mp3 +0 -0
- package/.pi/sounds/error/3-buzzer-track.mp3 +0 -0
- package/.pi/sounds/notification/1-soft-notification-track.mp3 +0 -0
- package/.pi/sounds/project-sounds.json +25 -0
- package/.pi/sounds/reminder/1-soft-notification-track.mp3 +0 -0
- package/.pi/sounds/success/1-tada-track.mp3 +0 -0
- package/.pi/sounds/success/2-jobs-done-track.mp3 +0 -0
- package/.pi/sounds/success/3-yay-track.mp3 +0 -0
- package/CONTRIBUTING.md +116 -0
- package/README.md +32 -39
- package/biome.json +34 -0
- package/firecrawl/.env.template +58 -0
- package/firecrawl/README.md +49 -0
- package/firecrawl/docker-compose.yaml +201 -0
- package/firecrawl/searxng/searxng.env +3 -0
- package/firecrawl/searxng/settings.yml +85 -0
- package/lefthook.yml +8 -0
- package/package.json +55 -24
- package/vault/AGENTS.md +37 -0
- package/vault/wiki/_templates/comparison.md +39 -0
- package/vault/wiki/_templates/concept.md +40 -0
- package/vault/wiki/_templates/decision.md +21 -0
- package/vault/wiki/_templates/entity.md +32 -0
- package/vault/wiki/_templates/flow.md +14 -0
- package/vault/wiki/_templates/module.md +18 -0
- package/vault/wiki/_templates/question.md +31 -0
- package/vault/wiki/_templates/source.md +39 -0
- package/vault/wiki/concepts/AST-Aware Code Chunking.md +44 -0
- package/vault/wiki/concepts/Build-Time Prompt Compilation.md +107 -0
- package/vault/wiki/concepts/Context Engine (AI Coding).md +47 -0
- package/vault/wiki/concepts/Context-Aware System Reminders.md +61 -0
- package/vault/wiki/concepts/Contextualized Text Embedding.md +42 -0
- package/vault/wiki/concepts/Contractor vs Employee AI Model.md +55 -0
- package/vault/wiki/concepts/Dual-Model Agent Architecture.md +65 -0
- package/vault/wiki/concepts/Late Chunking vs Early Chunking.md +43 -0
- package/vault/wiki/concepts/Majority Vote Ensembling.md +68 -0
- package/vault/wiki/concepts/Meta-Harness.md +16 -0
- package/vault/wiki/concepts/Multi-Agent AI Coding Architecture.md +75 -0
- package/vault/wiki/concepts/Prompt Enhancement.md +90 -0
- package/vault/wiki/concepts/Prompt Renderer.md +89 -0
- package/vault/wiki/concepts/Semantic Codebase Indexing.md +67 -0
- package/vault/wiki/concepts/additive-config-hierarchy.md +16 -0
- package/vault/wiki/concepts/agent-artifacts-verifiable-deliverables.md +71 -0
- package/vault/wiki/concepts/agent-browser-browser-automation.md +99 -0
- package/vault/wiki/concepts/agent-codebase-interface.md +43 -0
- package/vault/wiki/concepts/agent-harness-architecture.md +67 -0
- package/vault/wiki/concepts/agent-loop-detection-patterns.md +133 -0
- package/vault/wiki/concepts/agent-search-enforcement.md +126 -0
- package/vault/wiki/concepts/agent-skills-ecosystem.md +74 -0
- package/vault/wiki/concepts/agent-skills-pattern.md +68 -0
- package/vault/wiki/concepts/agentic-harness-context-enforcement.md +91 -0
- package/vault/wiki/concepts/agentic-harness.md +34 -0
- package/vault/wiki/concepts/agentic-orchestration-pipeline.md +56 -0
- package/vault/wiki/concepts/agentic-search-no-embeddings.md +18 -0
- package/vault/wiki/concepts/anthropic-context-engineering.md +13 -0
- package/vault/wiki/concepts/antigravity-agent-first-architecture.md +61 -0
- package/vault/wiki/concepts/ast-compression.md +19 -0
- package/vault/wiki/concepts/ast-truncation.md +66 -0
- package/vault/wiki/concepts/barrel-files.md +37 -0
- package/vault/wiki/concepts/browser-harness-agent.md +41 -0
- package/vault/wiki/concepts/browser-subagent-visual-verification.md +82 -0
- package/vault/wiki/concepts/codebase-intelligence-ecosystem-comparison.md +192 -0
- package/vault/wiki/concepts/codebase-intelligence-harness-integration.md +161 -0
- package/vault/wiki/concepts/codebase-to-context-ingestion.md +46 -0
- package/vault/wiki/concepts/codex-harness-innovations.md +147 -0
- package/vault/wiki/concepts/consensus-debate-flow.md +17 -0
- package/vault/wiki/concepts/consensus-debate.md +206 -0
- package/vault/wiki/concepts/content-addressed-spec-identity.md +166 -0
- package/vault/wiki/concepts/context-anxiety.md +57 -0
- package/vault/wiki/concepts/context-compression-techniques.md +19 -0
- package/vault/wiki/concepts/context-continuity.md +22 -0
- package/vault/wiki/concepts/context-drift-in-agents.md +106 -0
- package/vault/wiki/concepts/context-engineering.md +62 -0
- package/vault/wiki/concepts/context-folding.md +67 -0
- package/vault/wiki/concepts/context-mode.md +38 -0
- package/vault/wiki/concepts/cursor-harness-innovations.md +107 -0
- package/vault/wiki/concepts/deterministic-session-compaction.md +79 -0
- package/vault/wiki/concepts/drift-detection-unified.md +296 -0
- package/vault/wiki/concepts/execution-feedback-loop.md +46 -0
- package/vault/wiki/concepts/feedforward-feedback-harness.md +60 -0
- package/vault/wiki/concepts/five-root-cause-metrics-sentrux.md +40 -0
- package/vault/wiki/concepts/fork-safe-spec-storage.md +89 -0
- package/vault/wiki/concepts/fts5-sandbox.md +19 -0
- package/vault/wiki/concepts/fuzzy-edit-matching.md +71 -0
- package/vault/wiki/concepts/gemini-cli-architecture.md +104 -0
- package/vault/wiki/concepts/generator-evaluator-architecture.md +64 -0
- package/vault/wiki/concepts/guardian-agent-pattern.md +67 -0
- package/vault/wiki/concepts/harness-configuration-layers.md +89 -0
- package/vault/wiki/concepts/harness-control-frameworks.md +155 -0
- package/vault/wiki/concepts/harness-engineering-first-principles.md +90 -0
- package/vault/wiki/concepts/harness-h-formalism.md +53 -0
- package/vault/wiki/concepts/hybrid-code-search.md +61 -0
- package/vault/wiki/concepts/inline-post-edit-validation.md +112 -0
- package/vault/wiki/concepts/legendary-engineering-patterns-harness.md +110 -0
- package/vault/wiki/concepts/lifecycle-hooks.md +94 -0
- package/vault/wiki/concepts/mcp-tool-routing.md +102 -0
- package/vault/wiki/concepts/memory-system-of-record-vs-ephemeral-cache.md +47 -0
- package/vault/wiki/concepts/meta-agent-context-pruning.md +151 -0
- package/vault/wiki/concepts/model-adaptive-harness.md +122 -0
- package/vault/wiki/concepts/model-routing-agents.md +101 -0
- package/vault/wiki/concepts/monorepo-architecture.md +45 -0
- package/vault/wiki/concepts/multi-agent-specialization.md +61 -0
- package/vault/wiki/concepts/permission-subsystem.md +16 -0
- package/vault/wiki/concepts/pi-messenger-analysis.md +243 -0
- package/vault/wiki/concepts/pi-vscode-extension-landscape.md +37 -0
- package/vault/wiki/concepts/policy-engine-pattern.md +78 -0
- package/vault/wiki/concepts/progressive-disclosure-agents.md +53 -0
- package/vault/wiki/concepts/progressive-skill-disclosure.md +17 -0
- package/vault/wiki/concepts/provider-native-prompting.md +203 -0
- package/vault/wiki/concepts/quality-signal-sentrux.md +37 -0
- package/vault/wiki/concepts/repo-map-ranking.md +42 -0
- package/vault/wiki/concepts/result-monad-error-handling.md +47 -0
- package/vault/wiki/concepts/safety-defense-in-depth.md +83 -0
- package/vault/wiki/concepts/sandbox-os-enforcement.md +18 -0
- package/vault/wiki/concepts/selective-debate-routing.md +70 -0
- package/vault/wiki/concepts/self-evolving-harness.md +60 -0
- package/vault/wiki/concepts/sentrux-mcp-integration.md +36 -0
- package/vault/wiki/concepts/sentrux-rules-engine.md +49 -0
- package/vault/wiki/concepts/shell-pattern-compression.md +24 -0
- package/vault/wiki/concepts/skill-first-architecture.md +166 -0
- package/vault/wiki/concepts/structured-compaction.md +78 -0
- package/vault/wiki/concepts/subagent-orchestration.md +17 -0
- package/vault/wiki/concepts/subagent-worktree-isolation.md +68 -0
- package/vault/wiki/concepts/superpowers-methodology.md +78 -0
- package/vault/wiki/concepts/think-in-code.md +73 -0
- package/vault/wiki/concepts/ts-execution-layer.md +100 -0
- package/vault/wiki/concepts/typescript-strict-mode.md +37 -0
- package/vault/wiki/concepts/vcc-conversation-compaction-for-pi.md +51 -0
- package/vault/wiki/concepts/verification-drift-detection.md +19 -0
- package/vault/wiki/consensus/consensus-records.md +58 -0
- package/vault/wiki/decisions/2026-04-30-pi-lean-ctx-native.md +122 -0
- package/vault/wiki/decisions/adr-008.md +40 -0
- package/vault/wiki/decisions/adr-009.md +46 -0
- package/vault/wiki/decisions/adr-010.md +55 -0
- package/vault/wiki/decisions/adr-011.md +165 -0
- package/vault/wiki/decisions/adr-012.md +102 -0
- package/vault/wiki/decisions/adr-013.md +59 -0
- package/vault/wiki/decisions/adr-014.md +73 -0
- package/vault/wiki/decisions/adr-015.md +81 -0
- package/vault/wiki/decisions/adr-016.md +91 -0
- package/vault/wiki/decisions/adr-017.md +79 -0
- package/vault/wiki/decisions/adr-018.md +100 -0
- package/vault/wiki/decisions/adr-019.md +75 -0
- package/vault/wiki/decisions/adr-020.md +106 -0
- package/vault/wiki/decisions/adr-021.md +86 -0
- package/vault/wiki/decisions/adr-022.md +113 -0
- package/vault/wiki/decisions/adr-023.md +113 -0
- package/vault/wiki/decisions/adr-024.md +73 -0
- package/vault/wiki/decisions/adr-025.md +130 -0
- package/vault/wiki/decisions/adr-026.md +56 -0
- package/vault/wiki/decisions/colocate-wiki.md +34 -0
- package/vault/wiki/entities/Anders Hejlsberg.md +29 -0
- package/vault/wiki/entities/Anthropic.md +17 -0
- package/vault/wiki/entities/Augment Code.md +49 -0
- package/vault/wiki/entities/Bjarne Stroustrup.md +26 -0
- package/vault/wiki/entities/Bolt.new (StackBlitz).md +39 -0
- package/vault/wiki/entities/Boris Cherny.md +11 -0
- package/vault/wiki/entities/Claude Code.md +19 -0
- package/vault/wiki/entities/Dennis Ritchie.md +26 -0
- package/vault/wiki/entities/Emergent Labs.md +32 -0
- package/vault/wiki/entities/Google Cloud.md +16 -0
- package/vault/wiki/entities/Guido van Rossum.md +28 -0
- package/vault/wiki/entities/Ken Thompson.md +28 -0
- package/vault/wiki/entities/Lee et al.md +16 -0
- package/vault/wiki/entities/Linus Torvalds.md +28 -0
- package/vault/wiki/entities/Lovable (company).md +40 -0
- package/vault/wiki/entities/Martin Fowler.md +16 -0
- package/vault/wiki/entities/Meng et al.md +16 -0
- package/vault/wiki/entities/OpenAI.md +16 -0
- package/vault/wiki/entities/Rocket.new.md +38 -0
- package/vault/wiki/entities/VILA-Lab.md +15 -0
- package/vault/wiki/entities/autodev-codebase.md +18 -0
- package/vault/wiki/entities/ck-tool.md +59 -0
- package/vault/wiki/entities/codesearch.md +18 -0
- package/vault/wiki/entities/disler-indydevdan.md +33 -0
- package/vault/wiki/entities/gsd-get-shit-done.md +56 -0
- package/vault/wiki/entities/javascript-runtimes.md +48 -0
- package/vault/wiki/entities/jesse-vincent.md +38 -0
- package/vault/wiki/entities/lean-ctx.md +32 -0
- package/vault/wiki/entities/opendev.md +41 -0
- package/vault/wiki/entities/ops-codegraph-tool.md +18 -0
- package/vault/wiki/entities/pi-coding-agent.md +53 -0
- package/vault/wiki/entities/sentrux.md +54 -0
- package/vault/wiki/entities/vgrep-tool.md +57 -0
- package/vault/wiki/entities/vitest.md +41 -0
- package/vault/wiki/flows/harness-wiki-pipeline.md +204 -0
- package/vault/wiki/hot.md +932 -0
- package/vault/wiki/index.md +437 -0
- package/vault/wiki/log.md +418 -0
- package/vault/wiki/meta/dashboard.md +30 -0
- package/vault/wiki/meta/lint-report-2026-04-30.md +86 -0
- package/vault/wiki/meta/lint-report-2026-05-02.md +251 -0
- package/vault/wiki/meta/overview.canvas +43 -0
- package/vault/wiki/modules/adversarial-verification.md +57 -0
- package/vault/wiki/modules/automated-observability.md +54 -0
- package/vault/wiki/modules/bench.md +20 -0
- package/vault/wiki/modules/extensions.md +23 -0
- package/vault/wiki/modules/grounding-checkpoints.md +62 -0
- package/vault/wiki/modules/harness-implementation-plan.md +345 -0
- package/vault/wiki/modules/harness-wiki-skill-mapping.md +135 -0
- package/vault/wiki/modules/harness.md +86 -0
- package/vault/wiki/modules/persistent-memory.md +85 -0
- package/vault/wiki/modules/schema-orchestration.md +68 -0
- package/vault/wiki/modules/skills.md +27 -0
- package/vault/wiki/modules/spec-hardening.md +58 -0
- package/vault/wiki/modules/structured-planning.md +53 -0
- package/vault/wiki/modules/think-in-code-enforcement.md +153 -0
- package/vault/wiki/modules/wiki-query-interface.md +64 -0
- package/vault/wiki/overview.md +51 -0
- package/vault/wiki/questions/Research-pi-vs-claude-code-agentic-orchestration-pipeline.md +87 -0
- package/vault/wiki/questions/Research-sentrux-dev.md +123 -0
- package/vault/wiki/questions/Research-superpowers-skill-for-agentic-coding-agents.md +164 -0
- package/vault/wiki/questions/Research: Augment Code Context Engine.md +244 -0
- package/vault/wiki/questions/Research: Automating Software Engineering - Lovable, Bolt, Emergent, Rocket.md +112 -0
- package/vault/wiki/questions/Research: Claude Code State-of-the-Art Harness Improvements.md +209 -0
- package/vault/wiki/questions/Research: Codex State-of-the-Art Harness Improvements.md +99 -0
- package/vault/wiki/questions/Research: Engineering Workflows of Legendary Programmers and AI Harness Mapping.md +107 -0
- package/vault/wiki/questions/Research: Fallow Codebase Intelligence Harness Integration.md +72 -0
- package/vault/wiki/questions/Research: Gemini CLI SOTA Harness Integration.md +166 -0
- package/vault/wiki/questions/Research: GitHub Issues as Harness Spec Storage.md +188 -0
- package/vault/wiki/questions/Research: Google Antigravity Harness Integration.md +120 -0
- package/vault/wiki/questions/Research: Meta-Agent Context Drift Detection.md +236 -0
- package/vault/wiki/questions/Research: Model-Adaptive Agent Harness Design.md +95 -0
- package/vault/wiki/questions/Research: Model-Specific Prompting Guides.md +165 -0
- package/vault/wiki/questions/Research: Prompt Renderer for Multi-Model Agent Harness.md +216 -0
- package/vault/wiki/questions/Research: Skill-First Harness Architecture.md +91 -0
- package/vault/wiki/questions/Research: TypeScript Best Practices and Codebase Structure.md +88 -0
- package/vault/wiki/questions/Research: TypeScript Execution Layer for Agent Tool Calling.md +81 -0
- package/vault/wiki/questions/Research: claude-mem over Obsidian for Harness Layer.md +71 -0
- 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 +80 -0
- package/vault/wiki/questions/Research: context-mode vs lean-ctx.md +72 -0
- package/vault/wiki/questions/Research: cursor.sh Harness Innovations.md +92 -0
- package/vault/wiki/questions/Research: executor.sh Harness Integration.md +170 -0
- package/vault/wiki/questions/Research: how GSD fits into our coding harness setup.md +97 -0
- 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 +80 -0
- package/vault/wiki/questions/Research: pi-vcc.md +113 -0
- package/vault/wiki/questions/Research: semantic code search tools.md +69 -0
- package/vault/wiki/questions/Research: vcc extension for pi coding agent.md +73 -0
- package/vault/wiki/questions/how-to-enable-semantic-code-search-now.md +111 -0
- package/vault/wiki/questions/mvp-implementation-blueprint.md +552 -0
- package/vault/wiki/questions/research-agent-first-codebase-exploration.md +199 -0
- package/vault/wiki/questions/research-agentic-coding-harness-latest-papers.md +142 -0
- package/vault/wiki/questions/research-gitingest-gitreverse-integration.md +100 -0
- package/vault/wiki/questions/research-wozcode-token-reduction.md +67 -0
- package/vault/wiki/questions/resolved-context-pruning-inplace-vs-restart.md +95 -0
- package/vault/wiki/questions/resolved-context-window-economics.md +167 -0
- package/vault/wiki/questions/resolved-imad-debate-gating-transfer.md +126 -0
- package/vault/wiki/questions/resolved-mcp-tool-preference.md +112 -0
- package/vault/wiki/questions/resolved-small-model-meta-agents.md +107 -0
- package/vault/wiki/questions/resolved-treesitter-dynamic-languages.md +95 -0
- package/vault/wiki/sources/Auggie Context MCP Server.md +63 -0
- package/vault/wiki/sources/Augment Code Codacy AI Giants.md +61 -0
- package/vault/wiki/sources/Augment Code MCP SiliconAngle.md +49 -0
- package/vault/wiki/sources/Augment Code WorkOS ERC 2025.md +55 -0
- package/vault/wiki/sources/Augment Context Engine Official.md +71 -0
- package/vault/wiki/sources/Augment SWE-bench Agent GitHub.md +74 -0
- package/vault/wiki/sources/Augment SWE-bench Pro Blog.md +58 -0
- package/vault/wiki/sources/Source: AgentBus Jinja2 Prompt Pipelines.md +75 -0
- package/vault/wiki/sources/Source: Arxiv /342/200/224 Don't Break the Cache.md" +85 -0
- package/vault/wiki/sources/Source: Augment - Harness Engineering for AI Coding Agents.md +58 -0
- package/vault/wiki/sources/Source: Blake Crosley Agent Architecture Guide.md +100 -0
- package/vault/wiki/sources/Source: Bolt.new Architecture & Case Study.md +75 -0
- package/vault/wiki/sources/Source: Build-Time Prompt Compilation Architecture.md +107 -0
- package/vault/wiki/sources/Source: Claude API Agent Skills Overview.md +70 -0
- package/vault/wiki/sources/Source: Gemini CLI Changelogs.md +88 -0
- package/vault/wiki/sources/Source: Google Blog - Gemini CLI Announcement.md +57 -0
- package/vault/wiki/sources/Source: Google Gemini CLI Architecture Docs.md +53 -0
- package/vault/wiki/sources/Source: LangChain - Anatomy of Agent Harness.md +65 -0
- package/vault/wiki/sources/Source: Lovable Architecture & Clone Analysis.md +83 -0
- package/vault/wiki/sources/Source: Martin Fowler - Harness Engineering.md +70 -0
- package/vault/wiki/sources/Source: OpenAI Harness Engineering Five Principles.md +58 -0
- package/vault/wiki/sources/Source: OpenAI Harness Engineering /342/200/224 0 Lines of Human Code.md" +101 -0
- package/vault/wiki/sources/Source: OpenDev /342/200/224 Building AI Coding Agents for the Terminal.md" +100 -0
- package/vault/wiki/sources/Source: Render AI Coding Agents Benchmark 2025.md +53 -0
- package/vault/wiki/sources/Source: Rocket.new /342/200/224 Vibe Solutioning Platform.md" +70 -0
- package/vault/wiki/sources/Source: SwirlAI Agent Skills Progressive Disclosure.md +71 -0
- package/vault/wiki/sources/Source: TianPan Prompt Caching Architecture.md +89 -0
- package/vault/wiki/sources/Source: Vercel Labs agent-browser.md +155 -0
- package/vault/wiki/sources/Source: browser-harness CDP Harness.md +126 -0
- package/vault/wiki/sources/agent-drift-academic-paper.md +79 -0
- package/vault/wiki/sources/aider-repomap-tree-sitter.md +42 -0
- package/vault/wiki/sources/anthropic-compaction-api.md +58 -0
- package/vault/wiki/sources/anthropic-effective-harnesses.md +42 -0
- package/vault/wiki/sources/anthropic-prompt-best-practices.md +100 -0
- package/vault/wiki/sources/anthropic2026-harness-design.md +63 -0
- package/vault/wiki/sources/barrel-files-tkdodo.md +38 -0
- package/vault/wiki/sources/birth-of-unix-kernighan-interview.md +57 -0
- package/vault/wiki/sources/bockeler2026-harness-engineering.md +69 -0
- package/vault/wiki/sources/cast-code-chunking-paper.md +50 -0
- package/vault/wiki/sources/ck-semantic-search.md +78 -0
- package/vault/wiki/sources/claude-code-architecture-karaxai-2026.md +71 -0
- package/vault/wiki/sources/claude-code-architecture-qubytes-2026.md +50 -0
- package/vault/wiki/sources/claude-code-architecture-vila-lab-2026.md +64 -0
- package/vault/wiki/sources/claude-code-security-architecture-penligent-2026.md +70 -0
- package/vault/wiki/sources/claude-context-editing-docs.md +13 -0
- package/vault/wiki/sources/cloudflare-codemode.md +63 -0
- package/vault/wiki/sources/code-chunk-library-supermemory.md +63 -0
- package/vault/wiki/sources/codeact-apple-2024.md +62 -0
- package/vault/wiki/sources/codex-dsc-rfc-8573.md +41 -0
- package/vault/wiki/sources/codex-open-source-agent-2026.md +110 -0
- package/vault/wiki/sources/coir-code-retrieval-benchmark.md +51 -0
- package/vault/wiki/sources/colinmcnamara-context-optimization-codemode.md +48 -0
- package/vault/wiki/sources/context-folding-paper.md +61 -0
- package/vault/wiki/sources/context-mode-website.md +63 -0
- package/vault/wiki/sources/cursor-agent-best-practices-2026.md +62 -0
- package/vault/wiki/sources/cursor-fork-29b-2025.md +50 -0
- package/vault/wiki/sources/cursor-harness-april-2026.md +76 -0
- package/vault/wiki/sources/cursor-instant-apply-2024.md +45 -0
- package/vault/wiki/sources/cursor-shadow-workspace-2024.md +52 -0
- package/vault/wiki/sources/cursor-shipped-coding-agent-2026.md +53 -0
- package/vault/wiki/sources/cursor-vs-antigravity-2026.md +51 -0
- package/vault/wiki/sources/disler-pi-vs-claude-code.md +69 -0
- package/vault/wiki/sources/distill-deterministic-context-compression.md +53 -0
- package/vault/wiki/sources/embedding-models-benchmark-supermemory-2025.md +48 -0
- package/vault/wiki/sources/executor-rhyssullivan.md +122 -0
- package/vault/wiki/sources/fallow-rs-codebase-intelligence.md +125 -0
- package/vault/wiki/sources/fan2025-imad.md +60 -0
- package/vault/wiki/sources/forgecode-gpt5-agent-improvements.md +63 -0
- package/vault/wiki/sources/gemini-3-prompting-guide.md +78 -0
- package/vault/wiki/sources/gh-cli-sub-issue-rfc.md +50 -0
- package/vault/wiki/sources/gh-sub-issue-extension.md +72 -0
- package/vault/wiki/sources/github-fork-issues-discussion.md +44 -0
- package/vault/wiki/sources/github-issue-dependencies-docs.md +49 -0
- package/vault/wiki/sources/github-sub-issues-docs.md +51 -0
- package/vault/wiki/sources/gitingest.md +91 -0
- package/vault/wiki/sources/gitreverse.md +63 -0
- package/vault/wiki/sources/google-antigravity-official-blog.md +47 -0
- package/vault/wiki/sources/google-antigravity-wikipedia.md +53 -0
- package/vault/wiki/sources/gsd-codecentric-deep-dive.md +57 -0
- package/vault/wiki/sources/gsd-github-repo.md +51 -0
- package/vault/wiki/sources/gsd-hn-discussion.md +59 -0
- package/vault/wiki/sources/guido-python-design-philosophy.md +56 -0
- package/vault/wiki/sources/hejlsberg-7-learnings.md +48 -0
- package/vault/wiki/sources/ironclaw-drift-monitor.md +80 -0
- package/vault/wiki/sources/langsight-loop-detection.md +80 -0
- package/vault/wiki/sources/leanctx-website.md +69 -0
- package/vault/wiki/sources/lee2026-meta-harness.md +59 -0
- package/vault/wiki/sources/linux-kernel-coding-workflow.md +50 -0
- package/vault/wiki/sources/lou2026-autoharness.md +53 -0
- package/vault/wiki/sources/martin-fowler-harness-engineering.md +73 -0
- package/vault/wiki/sources/mcp-architecture-docs.md +13 -0
- package/vault/wiki/sources/meng2026-agent-harness-survey.md +79 -0
- package/vault/wiki/sources/mindstudio-four-agent-types.md +68 -0
- package/vault/wiki/sources/ms-chat-history-management.md +13 -0
- package/vault/wiki/sources/openai-prompt-guidance.md +104 -0
- package/vault/wiki/sources/openclaw-session-pruning.md +13 -0
- package/vault/wiki/sources/opencode-dcp.md +13 -0
- package/vault/wiki/sources/opendev-arxiv-2603.05344v1.md +79 -0
- package/vault/wiki/sources/openhands-platform.md +39 -0
- package/vault/wiki/sources/oss-guide-codebase-exploration.md +53 -0
- package/vault/wiki/sources/pi-compaction-extensions-ecosystem.md +102 -0
- package/vault/wiki/sources/pi-context-prune-github-repo.md +38 -0
- package/vault/wiki/sources/pi-mono-compaction-docs.md +38 -0
- package/vault/wiki/sources/pi-omni-compact-github-repo.md +50 -0
- package/vault/wiki/sources/pi-rtk-optimizer-github-repo.md +45 -0
- package/vault/wiki/sources/pi-vcc-github-repo.md +69 -0
- package/vault/wiki/sources/pi-vscode-marketplace.md +41 -0
- package/vault/wiki/sources/pi-vscode-model-provider-marketplace.md +39 -0
- package/vault/wiki/sources/py-tree-sitter.md +13 -0
- package/vault/wiki/sources/sentrux-dev-landing.md +40 -0
- package/vault/wiki/sources/sentrux-docs-pro-architecture.md +75 -0
- package/vault/wiki/sources/sentrux-docs-quality-signal.md +46 -0
- package/vault/wiki/sources/sentrux-docs-root-cause-metrics.md +57 -0
- package/vault/wiki/sources/sentrux-docs-rules-engine.md +58 -0
- package/vault/wiki/sources/sentrux-github-repo.md +56 -0
- package/vault/wiki/sources/superpowers-github-repo.md +56 -0
- package/vault/wiki/sources/superpowers-release-blog.md +54 -0
- package/vault/wiki/sources/superpowers-termdock-analysis.md +45 -0
- package/vault/wiki/sources/swe-agent-aci.md +42 -0
- package/vault/wiki/sources/swe-bench.md +45 -0
- package/vault/wiki/sources/swe-pruner-context-pruning.md +13 -0
- package/vault/wiki/sources/think-in-code-blog.md +48 -0
- package/vault/wiki/sources/tree-sitter-docs.md +13 -0
- package/vault/wiki/sources/ts-best-practices-2025-devto.md +42 -0
- package/vault/wiki/sources/ts-folder-structure-mingyang.md +58 -0
- package/vault/wiki/sources/ts-monorepo-koerselman.md +44 -0
- package/vault/wiki/sources/ts-result-error-handling-kkalamarski.md +52 -0
- package/vault/wiki/sources/ts-runtimes-comparison-betterstack.md +42 -0
- package/vault/wiki/sources/ts-strict-mode-rishikc.md +43 -0
- package/vault/wiki/sources/unix-philosophy.md +48 -0
- package/vault/wiki/sources/vectara-chunking-vs-embedding-naacl2025.md +39 -0
- package/vault/wiki/sources/vectara-guardian-agents.md +79 -0
- package/vault/wiki/sources/vgrep-semantic-search.md +76 -0
- package/vault/wiki/sources/vitest-official.md +41 -0
- package/vault/wiki/sources/vscode-pi-community-extension.md +40 -0
- package/vault/wiki/sources/wozcode.md +79 -0
- package/.agents/skills/compress/SKILL.md +0 -111
- package/.agents/skills/compress/scripts/__init__.py +0 -9
- package/.agents/skills/compress/scripts/__main__.py +0 -3
- package/.agents/skills/compress/scripts/benchmark.py +0 -78
- package/.agents/skills/compress/scripts/cli.py +0 -73
- package/.agents/skills/compress/scripts/compress.py +0 -227
- package/.agents/skills/compress/scripts/detect.py +0 -121
- package/.agents/skills/compress/scripts/validate.py +0 -189
- package/.agents/skills/emil-design-eng/SKILL.md +0 -679
- package/.agents/skills/lean-ctx/SKILL.md +0 -149
- package/.agents/skills/lean-ctx/scripts/install.sh +0 -95
- package/.agents/skills/scrapling-official/LICENSE.txt +0 -28
- package/.agents/skills/scrapling-official/SKILL.md +0 -390
- package/.agents/skills/scrapling-official/examples/01_fetcher_session.py +0 -26
- package/.agents/skills/scrapling-official/examples/02_dynamic_session.py +0 -26
- package/.agents/skills/scrapling-official/examples/03_stealthy_session.py +0 -26
- package/.agents/skills/scrapling-official/examples/04_spider.py +0 -58
- package/.agents/skills/scrapling-official/examples/README.md +0 -45
- package/.agents/skills/scrapling-official/references/fetching/choosing.md +0 -78
- package/.agents/skills/scrapling-official/references/fetching/dynamic.md +0 -352
- package/.agents/skills/scrapling-official/references/fetching/static.md +0 -432
- package/.agents/skills/scrapling-official/references/fetching/stealthy.md +0 -255
- package/.agents/skills/scrapling-official/references/mcp-server.md +0 -214
- package/.agents/skills/scrapling-official/references/migrating_from_beautifulsoup.md +0 -86
- package/.agents/skills/scrapling-official/references/parsing/adaptive.md +0 -212
- package/.agents/skills/scrapling-official/references/parsing/main_classes.md +0 -586
- package/.agents/skills/scrapling-official/references/parsing/selection.md +0 -494
- package/.agents/skills/scrapling-official/references/spiders/advanced.md +0 -344
- package/.agents/skills/scrapling-official/references/spiders/architecture.md +0 -94
- package/.agents/skills/scrapling-official/references/spiders/getting-started.md +0 -164
- package/.agents/skills/scrapling-official/references/spiders/proxy-blocking.md +0 -235
- package/.agents/skills/scrapling-official/references/spiders/requests-responses.md +0 -196
- package/.agents/skills/scrapling-official/references/spiders/sessions.md +0 -205
- package/PLAN.md +0 -11
- package/extensions/lean-ctx-enforce.ts +0 -166
- package/skills-lock.json +0 -35
- package/wiki/README.md +0 -19
- package/wiki/decisions/0001-establish-project-wiki-and-decision-record-format.md +0 -25
- package/wiki/decisions/0002-add-project-banner-to-readme.md +0 -26
- package/wiki/decisions/0003-remove-redundant-readme-title-heading.md +0 -26
- package/wiki/decisions/0004-publish-package-to-npm-as-ultimate-pi.md +0 -26
- package/wiki/decisions/0005-automate-npm-publish-with-github-actions.md +0 -27
- package/wiki/decisions/0006-switch-to-npm-trusted-publishing.md +0 -26
- package/wiki/decisions/0007-use-absolute-banner-url-for-npm-readme-rendering.md +0 -26
- package/wiki/decisions/0008-rename-banner-asset-for-cache-busting.md +0 -26
- package/wiki/decisions/0009-force-oidc-path-by-clearing-node-auth-token-in-publish-step.md +0 -25
- package/wiki/decisions/0010-simplify-setup-node-for-npm-trusted-publishing.md +0 -26
- package/wiki/decisions/0011-add-noop-workflow-change-to-force-fresh-publish-run.md +0 -25
- package/wiki/decisions/0012-align-workflow-runtime-with-npm-trusted-publishing-requirements.md +0 -26
- package/wiki/decisions/0013-add-package-repository-url-for-provenance-validation.md +0 -25
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: concept
|
|
3
|
+
title: "AST-Aware Code Chunking"
|
|
4
|
+
created: 2026-04-30
|
|
5
|
+
status: developing
|
|
6
|
+
tags:
|
|
7
|
+
- chunking
|
|
8
|
+
- code-rag
|
|
9
|
+
- embeddings
|
|
10
|
+
- semantic-search
|
|
11
|
+
related:
|
|
12
|
+
- "[[Semantic Codebase Indexing]]"
|
|
13
|
+
- "[[Context Engine (AI Coding)]]"
|
|
14
|
+
- "[[Contextualized Text Embedding]]"
|
|
15
|
+
sources:
|
|
16
|
+
- "[[cast-code-chunking-paper]]"
|
|
17
|
+
- "[[code-chunk-library-supermemory]]"
|
|
18
|
+
updated: 2026-05-02
|
|
19
|
+
|
|
20
|
+
---# AST-Aware Code Chunking
|
|
21
|
+
|
|
22
|
+
## Definition
|
|
23
|
+
|
|
24
|
+
Splitting source code into retrievable chunks at Abstract Syntax Tree (AST) boundaries instead of arbitrary character/line limits. Preserves semantic coherence: functions, classes, and methods remain intact within chunks rather than being split mid-body.
|
|
25
|
+
|
|
26
|
+
## Why It Matters
|
|
27
|
+
|
|
28
|
+
Line-based chunking (e.g., split every 500 chars) produces fragments like `subtotal += item.price * item.qu` — meaningless without surrounding context. AST-aware chunking ensures each chunk is a complete, self-contained syntactic unit.
|
|
29
|
+
|
|
30
|
+
## Algorithm (cAST / code-chunk)
|
|
31
|
+
|
|
32
|
+
1. **Parse** source into AST via tree-sitter
|
|
33
|
+
2. **Extract entities**: functions, methods, classes, imports with signatures and docstrings
|
|
34
|
+
3. **Build scope tree**: hierarchical parent-child relationships (method → class → file)
|
|
35
|
+
4. **Greedy window assignment**: pack complete AST nodes into chunks up to max non-whitespace character limit
|
|
36
|
+
5. **Recurse into oversized nodes**: if a single function exceeds chunk limit, recurse into its children
|
|
37
|
+
6. **Merge adjacent small windows**: reduce fragmentation
|
|
38
|
+
7. **Add contextualized text**: prepend file path, scope chain, signatures, imports before raw code
|
|
39
|
+
|
|
40
|
+
## Performance Impact
|
|
41
|
+
|
|
42
|
+
- cAST paper: +4.3 Recall@5 on RepoEval, +2.67 Pass@1 on SWE-bench generation
|
|
43
|
+
- code-chunk implementation: 70.1% Recall@5 vs 42.4% fixed-size baseline (with hard negatives + IoU threshold)
|
|
44
|
+
- Vectara NAACL 2025: chunking strategy matters as much or more than embedding model choice
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: concept
|
|
3
|
+
title: "Build-Time Prompt Compilation"
|
|
4
|
+
created: 2026-05-02
|
|
5
|
+
updated: 2026-05-02
|
|
6
|
+
tags:
|
|
7
|
+
- prompt-compilation
|
|
8
|
+
- build-time
|
|
9
|
+
- deterministic-builds
|
|
10
|
+
- npm-packaging
|
|
11
|
+
status: developing
|
|
12
|
+
related:
|
|
13
|
+
- "[[Prompt Renderer]]"
|
|
14
|
+
- "[[research: Prompt Renderer for Multi-Model Agent Harness]]"
|
|
15
|
+
sources:
|
|
16
|
+
- "[[Source: Build-Time Prompt Compilation Architecture]]"
|
|
17
|
+
|
|
18
|
+
---# Build-Time Prompt Compilation
|
|
19
|
+
|
|
20
|
+
The practice of compiling prompts from a base specification into validated, model-specific output at **build time** (not runtime), then shipping the compiled output as static assets in an npm package.
|
|
21
|
+
|
|
22
|
+
## Why Build-Time?
|
|
23
|
+
|
|
24
|
+
| Aspect | Build-Time | Runtime |
|
|
25
|
+
|--------|-----------|---------|
|
|
26
|
+
| **Latency** | Zero at runtime | Template parse + render per request |
|
|
27
|
+
| **Caching** | Built-in (compiled output IS the cache) | Requires cache warming, TTL management |
|
|
28
|
+
| **Validation** | Syntax errors caught at build | Errors at request time |
|
|
29
|
+
| **npm distribution** | Static JSON files | Ship template engine + templates |
|
|
30
|
+
| **Determinism** | Hash-verifiable output | Runtime variables may differ |
|
|
31
|
+
| **Dependency weight** | None (compiled JSON is raw data) | Must ship template engine in bundle |
|
|
32
|
+
| **Real-world tools** | Microsoft prompt-engine (abandoned, 2.8K stars), PromptWeaver (active, MIT) | Jinja2, Handlebars runtime rendering |
|
|
33
|
+
|
|
34
|
+
## Pipeline Design
|
|
35
|
+
|
|
36
|
+
```
|
|
37
|
+
Source: prompts/*.yaml (base specs)
|
|
38
|
+
↓ [parser]
|
|
39
|
+
PromptConfig[] (validated AST)
|
|
40
|
+
↓ [model-renderers]
|
|
41
|
+
Per-model output: prompts/gpt/*.json, prompts/claude/*.json, prompts/gemini/*.json
|
|
42
|
+
↓ [validator]
|
|
43
|
+
Check: syntax, token thresholds, variable completeness
|
|
44
|
+
↓ [serializer]
|
|
45
|
+
Deterministic JSON (sorted keys, fixed formatting, hash manifest)
|
|
46
|
+
↓ [packager]
|
|
47
|
+
Included in npm package as static assets
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
## Deterministic Build Requirements
|
|
51
|
+
|
|
52
|
+
1. **Version-locked renderer**: Pinned compiler version in build manifest
|
|
53
|
+
2. **Input hashing**: `sha256sum` over all source spec files
|
|
54
|
+
3. **Build manifest**: Records compiler version, source files, file hashes, build time
|
|
55
|
+
4. **Same input → same output**: Guaranteed identical compiled prompts for same spec + version
|
|
56
|
+
|
|
57
|
+
## Incremental Compilation
|
|
58
|
+
|
|
59
|
+
Only recompile prompts whose spec hash changed:
|
|
60
|
+
1. Hash each source spec file
|
|
61
|
+
2. Compare against previous build manifest
|
|
62
|
+
3. Only recompile changed specs + specs that depend on changed fragments
|
|
63
|
+
4. Full compilation only for release builds
|
|
64
|
+
|
|
65
|
+
## Two-Phase Variable Model
|
|
66
|
+
|
|
67
|
+
```yaml
|
|
68
|
+
# Compile-time vars: resolved at build, produce multiple variants
|
|
69
|
+
model_name: { compile: true, values: [gpt-5.2, claude-sonnet-4.5] }
|
|
70
|
+
# → generates 2 compiled prompts per spec
|
|
71
|
+
|
|
72
|
+
# Runtime vars: resolved at call time, injected into compiled template
|
|
73
|
+
user_query: { compile: false }
|
|
74
|
+
# → placeholder left in compiled output for runtime substitution
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
## Token Budget Awareness
|
|
78
|
+
|
|
79
|
+
Compiled prompts must be validated against model-specific constraints:
|
|
80
|
+
- **Minimum cache threshold**: 1,024 tokens (OpenAI/Anthropic), 4,096 (Google)
|
|
81
|
+
- **Maximum context window**: Model-specific (e.g., 200K for Claude)
|
|
82
|
+
- **Cost estimate**: Embedded in compiled output metadata
|
|
83
|
+
|
|
84
|
+
## Integration with npm
|
|
85
|
+
|
|
86
|
+
```
|
|
87
|
+
ultimate-pi/
|
|
88
|
+
├── prompts/ # Source specs (committed to git)
|
|
89
|
+
│ ├── base/
|
|
90
|
+
│ │ ├── system.yaml
|
|
91
|
+
│ │ ├── spec-hardening.yaml
|
|
92
|
+
│ │ └── verify.yaml
|
|
93
|
+
│ └── fragments/
|
|
94
|
+
│ └── code-context.yaml
|
|
95
|
+
├── dist/
|
|
96
|
+
│ └── prompts/ # Compiled output (shipped in npm)
|
|
97
|
+
│ ├── gpt/
|
|
98
|
+
│ │ ├── system.json
|
|
99
|
+
│ │ └── verify.json
|
|
100
|
+
│ ├── claude/
|
|
101
|
+
│ │ └── system.json
|
|
102
|
+
│ └── gemini/
|
|
103
|
+
│ └── system.json
|
|
104
|
+
│ └── manifest.json # Build manifest with hashes
|
|
105
|
+
└── scripts/
|
|
106
|
+
└── compile-prompts.ts # Build script
|
|
107
|
+
```
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: concept
|
|
3
|
+
title: "Context Engine (AI Coding)"
|
|
4
|
+
created: 2026-04-30
|
|
5
|
+
status: developing
|
|
6
|
+
tags:
|
|
7
|
+
- ai-coding
|
|
8
|
+
- context
|
|
9
|
+
- semantic-search
|
|
10
|
+
- rag
|
|
11
|
+
aliases:
|
|
12
|
+
- Codebase Context Engine
|
|
13
|
+
related:
|
|
14
|
+
- "[[Semantic Codebase Indexing]]"
|
|
15
|
+
- "[[Prompt Enhancement]]"
|
|
16
|
+
- "[[Contractor vs Employee AI Model]]"
|
|
17
|
+
sources:
|
|
18
|
+
- "[[Augment Context Engine Official]]"
|
|
19
|
+
- "[[Augment Code WorkOS ERC 2025]]"
|
|
20
|
+
updated: 2026-05-02
|
|
21
|
+
|
|
22
|
+
---# Context Engine (AI Coding)
|
|
23
|
+
|
|
24
|
+
A context engine is a system that provides AI coding agents with deep, semantic understanding of a codebase beyond what text search (grep) can provide. It is the differentiator between agents that merely generate code and agents that write code that fits the codebase.
|
|
25
|
+
|
|
26
|
+
## Core Properties
|
|
27
|
+
|
|
28
|
+
1. **Semantic indexing**: Embeds code into vector space, understanding relationships between files, functions, classes, and services.
|
|
29
|
+
2. **Real-time sync**: Maintains live understanding as code changes, with millisecond-level sync.
|
|
30
|
+
3. **Relationship mapping**: Tracks dependencies, call graphs, imports, and architectural patterns.
|
|
31
|
+
4. **Intelligent retrieval**: Returns only what's relevant to the current task — not the entire codebase.
|
|
32
|
+
5. **Multi-source**: Goes beyond code to include commit history, team patterns, documentation, and tribal knowledge.
|
|
33
|
+
|
|
34
|
+
## Why It Matters
|
|
35
|
+
|
|
36
|
+
The same LLM model produces dramatically different results depending on context quality. Augment Code demonstrated that Claude Opus 4.5 scored 51.80% (Auggie) vs 45.89% (SWE-Agent baseline) — a 6-point gap from context alone. When used as a context provider for other agents, improvements of 30-80% were observed.
|
|
37
|
+
|
|
38
|
+
## Key Insight
|
|
39
|
+
|
|
40
|
+
> Context quality determines code quality more than model intelligence. A weaker model with excellent context outperforms a stronger model with poor context.
|
|
41
|
+
|
|
42
|
+
## Implementation Approaches
|
|
43
|
+
|
|
44
|
+
1. **Embedding-based**: Use local embedding models (e.g., all-MiniLM-L6-v2) to index code files into a vector database (LanceDB, ChromaDB).
|
|
45
|
+
2. **Hybrid retrieval**: Combine keyword (BM25) + semantic (cosine similarity) search for best recall.
|
|
46
|
+
3. **Graph-based**: Build dependency/call graphs using tree-sitter AST analysis.
|
|
47
|
+
4. **MCP exposure**: Wrap the context engine as an MCP server for any AI agent to consume.
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: concept
|
|
3
|
+
title: "Context-Aware System Reminders"
|
|
4
|
+
created: 2026-05-03
|
|
5
|
+
updated: 2026-05-03
|
|
6
|
+
status: developing
|
|
7
|
+
tags:
|
|
8
|
+
- context-engineering
|
|
9
|
+
- long-horizon
|
|
10
|
+
- behavioral-steering
|
|
11
|
+
- attention-decay
|
|
12
|
+
related:
|
|
13
|
+
- "[[context-engineering]]"
|
|
14
|
+
- "[[context-anxiety]]"
|
|
15
|
+
- "[[Source: OpenDev — Building AI Coding Agents for the Terminal]]"
|
|
16
|
+
sources:
|
|
17
|
+
- "[[Source: OpenDev — Building AI Coding Agents for the Terminal]]"
|
|
18
|
+
|
|
19
|
+
---# Context-Aware System Reminders
|
|
20
|
+
|
|
21
|
+
A mechanism for **counteracting instruction fade-out** in long-running agent sessions. From OpenDev ([Section 2.3.4](https://arxiv.org/html/2603.05344v1#S2.SS3.SSS4)). The core problem: after 30+ tool calls, agents silently stop following system prompt instructions — even though the instructions are still in the context window.
|
|
22
|
+
|
|
23
|
+
## How It Works
|
|
24
|
+
|
|
25
|
+
Instead of putting all instructions in the system prompt (which sits at the conversation's beginning and loses influence over time), inject **short, targeted reminders at the exact point of decision**.
|
|
26
|
+
|
|
27
|
+
Each reminder is a brief `role: user` message placed at maximum recency in the conversation, immediately before the next LLM call. The model treats it as "something that just happened requiring a response."
|
|
28
|
+
|
|
29
|
+
## Event Detectors
|
|
30
|
+
|
|
31
|
+
Eight conditions trigger reminders:
|
|
32
|
+
- Tool failure without retry (6 error-specific templates)
|
|
33
|
+
- Exploration spiral (5+ consecutive reads)
|
|
34
|
+
- Denied tool re-attempts
|
|
35
|
+
- Premature completion with incomplete todos
|
|
36
|
+
- Continued work after all todos done
|
|
37
|
+
- Plan approval without follow-through
|
|
38
|
+
- Unprocessed subagent results
|
|
39
|
+
- Empty completion messages
|
|
40
|
+
|
|
41
|
+
## Guardrail Counters
|
|
42
|
+
|
|
43
|
+
Each reminder type has a counter or one-shot flag to prevent degenerating into noise:
|
|
44
|
+
- Incomplete-todo nudges: max 2
|
|
45
|
+
- Error-recovery nudges: max 3
|
|
46
|
+
- Plan-approved, all-todos-complete, completion-summary: fire exactly once
|
|
47
|
+
|
|
48
|
+
## Why role: user beats role: system
|
|
49
|
+
|
|
50
|
+
Early experiments with `role: system` injection confirmed: user-role reminders produced noticeably higher compliance rates. After 40 turns, another system message blends into the background. A user message appears at the position of highest recency — the model treats it as something demanding a response.
|
|
51
|
+
|
|
52
|
+
## Relevance to Our Harness
|
|
53
|
+
|
|
54
|
+
Our harness's instruction drift is a known problem in long sessions. System reminders provide a lightweight, targeted mechanism:
|
|
55
|
+
1. Catalog our failure modes (what instructions does our agent stop following?)
|
|
56
|
+
2. Create a reminder template for each
|
|
57
|
+
3. Detect the triggering condition at iteration boundaries
|
|
58
|
+
4. Inject at decision point with `role: user`
|
|
59
|
+
5. Cap frequency to prevent noise
|
|
60
|
+
|
|
61
|
+
This is **cheaper than context resets** and **more targeted than full system prompt re-injection**.
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: concept
|
|
3
|
+
title: "Contextualized Text Embedding"
|
|
4
|
+
created: 2026-04-30
|
|
5
|
+
status: developing
|
|
6
|
+
tags:
|
|
7
|
+
- embeddings
|
|
8
|
+
- chunking
|
|
9
|
+
- code-rag
|
|
10
|
+
- semantic-search
|
|
11
|
+
related:
|
|
12
|
+
- "[[AST-Aware Code Chunking]]"
|
|
13
|
+
- "[[Semantic Codebase Indexing]]"
|
|
14
|
+
sources:
|
|
15
|
+
- "[[code-chunk-library-supermemory]]"
|
|
16
|
+
updated: 2026-05-02
|
|
17
|
+
|
|
18
|
+
---# Contextualized Text Embedding
|
|
19
|
+
|
|
20
|
+
## Definition
|
|
21
|
+
|
|
22
|
+
Prepending semantic metadata (file path, scope chain, signatures, imports) to raw code before embedding. Transforms code from a bare syntactic fragment into a natural-language-like description that embedding models (trained primarily on natural language) can process effectively.
|
|
23
|
+
|
|
24
|
+
## Format
|
|
25
|
+
|
|
26
|
+
```
|
|
27
|
+
# src/services/user.ts
|
|
28
|
+
# Scope: UserService > getUser
|
|
29
|
+
# Defines: async getUser(id: string): Promise<User>
|
|
30
|
+
# Uses: Database
|
|
31
|
+
# After: constructor
|
|
32
|
+
|
|
33
|
+
async getUser(id: string): Promise<User> { ... }
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
## Why It Works
|
|
37
|
+
|
|
38
|
+
Embedding models like MiniLM-L6-v2 are trained on natural language corpora (Wikipedia, books, web text). They understand sentences and paragraphs, not raw code syntax. By prepending a natural-language description of what the code is, where it lives, and what it depends on, the embedding captures semantic relationships that pure code misses.
|
|
39
|
+
|
|
40
|
+
## Impact on MiniLM-L6-v2
|
|
41
|
+
|
|
42
|
+
MiniLM-L6-v2 was not trained on code. Without contextualized text, it embeds `async getUser(id)` as a sequence of tokens without understanding it's inside a UserService class or uses a Database. Contextualized text bridges this gap, making smaller general-purpose models viable for code retrieval.
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: concept
|
|
3
|
+
title: "Contractor vs Employee AI Model"
|
|
4
|
+
created: 2026-04-30
|
|
5
|
+
status: developing
|
|
6
|
+
tags:
|
|
7
|
+
- ai-strategy
|
|
8
|
+
- context
|
|
9
|
+
- model-selection
|
|
10
|
+
aliases:
|
|
11
|
+
- Context vs Intelligence
|
|
12
|
+
related:
|
|
13
|
+
- "[[Context Engine (AI Coding)]]"
|
|
14
|
+
- "[[Augment Code]]"
|
|
15
|
+
sources:
|
|
16
|
+
- "[[Augment Code Codacy AI Giants]]"
|
|
17
|
+
updated: 2026-05-02
|
|
18
|
+
|
|
19
|
+
---# Contractor vs Employee AI Model
|
|
20
|
+
|
|
21
|
+
A mental model coined by Vinay Perneti (VP Engineering at Augment Code) that frames the relationship between LLM intelligence and codebase context in AI coding tools.
|
|
22
|
+
|
|
23
|
+
## The Analogy
|
|
24
|
+
|
|
25
|
+
| Aspect | Contractor | Employee |
|
|
26
|
+
|--------|-----------|----------|
|
|
27
|
+
| **Intelligence** | Has it (borrowed) | Has it |
|
|
28
|
+
| **Context** | Missing | Has it (accumulated over time) |
|
|
29
|
+
| **Result** | Needs constant re-explanation | Understands the codebase deeply |
|
|
30
|
+
| **AI equivalent** | Raw LLM with no codebase context | LLM + Context Engine |
|
|
31
|
+
|
|
32
|
+
## Why This Matters
|
|
33
|
+
|
|
34
|
+
Most AI coding tools focus on model intelligence — chasing higher benchmark scores by using more powerful models. Augment's insight: context is the bottleneck, not intelligence.
|
|
35
|
+
|
|
36
|
+
### Evidence
|
|
37
|
+
- Claude Opus 4.5 scored 45.89% through SWE-Agent (baseline context).
|
|
38
|
+
- Same model scored 51.80% through Auggie (semantic context).
|
|
39
|
+
- A weaker model (Sonnet) with Augment's context can outperform Opus without it.
|
|
40
|
+
|
|
41
|
+
## Practical Implications
|
|
42
|
+
|
|
43
|
+
### For Tool Builders
|
|
44
|
+
- Invest in context infrastructure before chasing model upgrades.
|
|
45
|
+
- Build contextual understanding that persists across sessions.
|
|
46
|
+
- Treat context as a first-class engineering problem, not an afterthought.
|
|
47
|
+
|
|
48
|
+
### For Model Selection
|
|
49
|
+
- Augment offers only 3 model choices (vs competitors' 20+).
|
|
50
|
+
- Philosophy: "Let us solve the hard problems of what models make sense. You shouldn't spend mental cycles on how to get the best context."
|
|
51
|
+
|
|
52
|
+
### For Our Harness
|
|
53
|
+
- Context layer should be independent of model layer.
|
|
54
|
+
- Swap models without rebuilding context infrastructure.
|
|
55
|
+
- Invest in semantic indexing, knowledge persistence, and pattern recognition before model optimization.
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: concept
|
|
3
|
+
title: "Dual-Model Agent Architecture"
|
|
4
|
+
created: 2026-04-30
|
|
5
|
+
status: developing
|
|
6
|
+
tags:
|
|
7
|
+
- agent-architecture
|
|
8
|
+
- llm
|
|
9
|
+
- ensembling
|
|
10
|
+
- swe-bench
|
|
11
|
+
aliases:
|
|
12
|
+
- Two-Model Agent
|
|
13
|
+
related:
|
|
14
|
+
- "[[Majority Vote Ensembling]]"
|
|
15
|
+
- "[[Agentic Coding Harness]]"
|
|
16
|
+
sources:
|
|
17
|
+
- "[[Augment SWE-bench Agent GitHub]]"
|
|
18
|
+
- "[[Augment SWE-bench Pro Blog]]"
|
|
19
|
+
updated: 2026-05-02
|
|
20
|
+
|
|
21
|
+
---# Dual-Model Agent Architecture
|
|
22
|
+
|
|
23
|
+
An agent architecture that uses two different LLMs for distinct phases: a fast, capable model for iterative reasoning/ coding, and a more deliberative model for solution selection/verification.
|
|
24
|
+
|
|
25
|
+
## Augment Code's Implementation
|
|
26
|
+
|
|
27
|
+
### Phase 1: Core Reasoning (Claude Sonnet 3.7)
|
|
28
|
+
- Handles the iterative coding loop: read files, write code, run tests, debug.
|
|
29
|
+
- Fast, capable, good at following instructions.
|
|
30
|
+
- Runs in a loop with tool access (bash, file edit, sequential thinking).
|
|
31
|
+
|
|
32
|
+
### Phase 2: Solution Ensembling (OpenAI o1)
|
|
33
|
+
- After generating N candidate solutions (typically 8).
|
|
34
|
+
- Presents all candidates to o1 with evaluation outcomes.
|
|
35
|
+
- o1 analyzes and selects the best solution.
|
|
36
|
+
- o1 is slower but more deliberative — better at comparative analysis.
|
|
37
|
+
|
|
38
|
+
## Why Two Models?
|
|
39
|
+
|
|
40
|
+
1. **Cost optimization**: Fast model for the 95% of work; expensive model only for selection.
|
|
41
|
+
2. **Complementary strengths**: Claude excels at code generation; o1 excels at analysis and comparison.
|
|
42
|
+
3. **Error reduction**: Majority vote ensembling catches errors that any single run might miss.
|
|
43
|
+
4. **Separation of concerns**: Generation and evaluation use different reasoning patterns.
|
|
44
|
+
|
|
45
|
+
## Alternative Patterns
|
|
46
|
+
|
|
47
|
+
### Single-Model Multi-Pass
|
|
48
|
+
- Same model generates multiple solutions then self-reviews.
|
|
49
|
+
- Simpler but less effective than cross-model ensembling.
|
|
50
|
+
|
|
51
|
+
### Model Cascade
|
|
52
|
+
- Start with fast/cheap model; escalate to stronger model on failure.
|
|
53
|
+
- Used by SWE-agent and some production systems.
|
|
54
|
+
|
|
55
|
+
### Committee of Models
|
|
56
|
+
- 3+ different models generate solutions independently.
|
|
57
|
+
- Voting or LLM-based selection.
|
|
58
|
+
|
|
59
|
+
## Implementation for Our Harness
|
|
60
|
+
|
|
61
|
+
We can implement dual-model architecture as a configurable strategy:
|
|
62
|
+
- **Primary model**: Claude (fast, code-capable) for the main agent loop.
|
|
63
|
+
- **Ensembler model**: GPT-5 or o1 for solution verification and selection.
|
|
64
|
+
- Generate 3-5 candidate solutions, use ensembler to pick best.
|
|
65
|
+
- Configurable via harness config.
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: concept
|
|
3
|
+
title: "Late Chunking vs Early Chunking"
|
|
4
|
+
created: 2026-04-30
|
|
5
|
+
status: developing
|
|
6
|
+
tags:
|
|
7
|
+
- chunking
|
|
8
|
+
- embeddings
|
|
9
|
+
- rag
|
|
10
|
+
- semantic-search
|
|
11
|
+
related:
|
|
12
|
+
- "[[AST-Aware Code Chunking]]"
|
|
13
|
+
- "[[Contextualized Text Embedding]]"
|
|
14
|
+
sources:
|
|
15
|
+
- "[[vectara-chunking-vs-embedding-naacl2025]]"
|
|
16
|
+
updated: 2026-05-02
|
|
17
|
+
|
|
18
|
+
---# Late Chunking vs Early Chunking
|
|
19
|
+
|
|
20
|
+
## Definitions
|
|
21
|
+
|
|
22
|
+
- **Early chunking (standard)**: Split text → embed each chunk separately. Each chunk's embedding only sees its own text.
|
|
23
|
+
- **Late chunking**: Embed the entire document first (producing token-level embeddings), then pool token embeddings into chunk-level embeddings using chunk boundaries. Each chunk's embedding "sees" the full document context.
|
|
24
|
+
- **Contextual retrieval**: An intermediate approach: prepend document-level context to each chunk before embedding. Simpler than late chunking, captures some cross-chunk context.
|
|
25
|
+
|
|
26
|
+
## Trade-offs
|
|
27
|
+
|
|
28
|
+
| Approach | Semantic Coherence | Compute Cost | Implementation Complexity |
|
|
29
|
+
|----------|-------------------|--------------|---------------------------|
|
|
30
|
+
| Early chunking | Lowest | Lowest | Simplest |
|
|
31
|
+
| Contextual retrieval | Medium | Medium | Moderate |
|
|
32
|
+
| Late chunking | Highest | Highest | Complex |
|
|
33
|
+
|
|
34
|
+
## Research Findings (arXiv:2504.19754)
|
|
35
|
+
|
|
36
|
+
Late chunking + contextual retrieval evaluated for RAG systems:
|
|
37
|
+
- Contextual retrieval preserves semantic coherence more effectively than early chunking
|
|
38
|
+
- But requires greater computational resources (embeds full documents)
|
|
39
|
+
- For code: contextual retrieval (prepending scope/file context) is the sweet spot — better than bare early chunking, cheaper than full late chunking
|
|
40
|
+
|
|
41
|
+
## Relevance to Our Implementation
|
|
42
|
+
|
|
43
|
+
We implement **contextual retrieval** (not full late chunking): prepend file path, scope chain, signatures, and imports to each chunk before embedding. This gives us much of the benefit at moderate cost.
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: concept
|
|
3
|
+
title: "Majority Vote Ensembling"
|
|
4
|
+
created: 2026-04-30
|
|
5
|
+
status: developing
|
|
6
|
+
tags:
|
|
7
|
+
- agent-architecture
|
|
8
|
+
- llm
|
|
9
|
+
- ensembling
|
|
10
|
+
aliases:
|
|
11
|
+
- Solution Ensembling
|
|
12
|
+
related:
|
|
13
|
+
- "[[Dual-Model Agent Architecture]]"
|
|
14
|
+
sources:
|
|
15
|
+
- "[[Augment SWE-bench Agent GitHub]]"
|
|
16
|
+
updated: 2026-05-02
|
|
17
|
+
|
|
18
|
+
---# Majority Vote Ensembling
|
|
19
|
+
|
|
20
|
+
A technique where an agent generates multiple candidate solutions to the same problem, then uses an LLM (or voting mechanism) to select the best one. Used by Augment Code's SWE-bench agent to boost success rates.
|
|
21
|
+
|
|
22
|
+
## How Augment Implements It
|
|
23
|
+
|
|
24
|
+
1. Run the core agent (Claude Sonnet 3.7) N times on the same problem (typically N=8).
|
|
25
|
+
2. Each run produces a candidate solution (diff).
|
|
26
|
+
3. Run evaluation harness on each candidate to get pass/fail outcomes.
|
|
27
|
+
4. Feed all candidates + outcomes to OpenAI o1 with a prompt asking it to select the best solution.
|
|
28
|
+
5. o1 returns the index of the selected solution.
|
|
29
|
+
|
|
30
|
+
## Input Format
|
|
31
|
+
```json
|
|
32
|
+
{
|
|
33
|
+
"id": "problem-1",
|
|
34
|
+
"instruction": "Fix the login timeout issue",
|
|
35
|
+
"diffs": ["diff1", "diff2", "..."],
|
|
36
|
+
"eval_outcomes": [
|
|
37
|
+
{"is_success": true},
|
|
38
|
+
{"is_success": false}
|
|
39
|
+
]
|
|
40
|
+
}
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
## Why It Works
|
|
44
|
+
|
|
45
|
+
1. **Variance reduction**: Multiple independent runs reduce the impact of any single bad generation.
|
|
46
|
+
2. **Complementary failures**: Different runs fail on different aspects; ensembling can pick the run that succeeded.
|
|
47
|
+
3. **LLM-as-judge**: o1's reasoning capabilities are better suited for comparative analysis than code generation.
|
|
48
|
+
4. **Evaluation-guided**: Including eval outcomes helps the ensembler distinguish between functionally correct and incorrect solutions.
|
|
49
|
+
|
|
50
|
+
## Cost Consideration
|
|
51
|
+
|
|
52
|
+
Running N candidates multiplies cost by N. Augment's approach: use a fast/cheap model (Sonnet) for the N runs, then an expensive model (o1) only for the single ensembling step.
|
|
53
|
+
|
|
54
|
+
## Implementation for Our Harness
|
|
55
|
+
|
|
56
|
+
```python
|
|
57
|
+
def ensemble_solutions(problem: str, candidates: int = 5) -> str:
|
|
58
|
+
solutions = []
|
|
59
|
+
for i in range(candidates):
|
|
60
|
+
# Run agent independently
|
|
61
|
+
diff = run_agent(problem)
|
|
62
|
+
result = evaluate(diff)
|
|
63
|
+
solutions.append({"diff": diff, "success": result.passed})
|
|
64
|
+
|
|
65
|
+
# Select best via LLM ensembler
|
|
66
|
+
best = llm_ensembler.select_best(problem, solutions)
|
|
67
|
+
return best.diff
|
|
68
|
+
```
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: concept
|
|
3
|
+
status: stub
|
|
4
|
+
created: 2026-05-02
|
|
5
|
+
updated: 2026-05-02
|
|
6
|
+
tags: [concept, harness, meta-learning]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Meta-Harness
|
|
10
|
+
|
|
11
|
+
Outer-loop harness optimization framework from Lee et al. (Stanford/Together AI). A harness that optimizes the inner harness — selecting best configurations, prompts, and patterns across multiple agent runs.
|
|
12
|
+
|
|
13
|
+
## References
|
|
14
|
+
|
|
15
|
+
- [[lee2026-meta-harness]]
|
|
16
|
+
- [[self-evolving-harness]]
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: concept
|
|
3
|
+
title: "Multi-Agent AI Coding Architecture"
|
|
4
|
+
created: 2026-05-03
|
|
5
|
+
updated: 2026-05-03
|
|
6
|
+
status: developing
|
|
7
|
+
tags:
|
|
8
|
+
- multi-agent
|
|
9
|
+
- architecture
|
|
10
|
+
- agentic-coding
|
|
11
|
+
- harness
|
|
12
|
+
related:
|
|
13
|
+
- "[[subagent-orchestration]]"
|
|
14
|
+
- "[[generator-evaluator-architecture]]"
|
|
15
|
+
- "[[agentic-harness]]"
|
|
16
|
+
- "[[Source: Lovable Architecture & Clone Analysis]]"
|
|
17
|
+
- "[[anthropic2026-harness-design]]"
|
|
18
|
+
sources:
|
|
19
|
+
- "[[Source: Lovable Architecture & Clone Analysis]]"
|
|
20
|
+
- "[[anthropic2026-harness-design]]"
|
|
21
|
+
- "[[Source: OpenAI Harness Engineering — 0 Lines of Human Code]]"
|
|
22
|
+
- "[[Source: OpenDev — Building AI Coding Agents for the Terminal]]"
|
|
23
|
+
|
|
24
|
+
---# Multi-Agent AI Coding Architecture
|
|
25
|
+
|
|
26
|
+
The decomposition of software engineering tasks across specialized agents, each with a defined role, input/output contract, and tool surface. This is the **universal pattern** across all successful AI coding platforms.
|
|
27
|
+
|
|
28
|
+
## Three Common Decompositions
|
|
29
|
+
|
|
30
|
+
### Lovable/Clone Pattern: Planner → Architect → Coder
|
|
31
|
+
```
|
|
32
|
+
User prompt → Planner (structured Plan) → Architect (TaskPlan) → Coder (files on disk)
|
|
33
|
+
```
|
|
34
|
+
- Each agent receives Pydantic-validated inputs
|
|
35
|
+
- LangGraph orchestrates with conditional edges
|
|
36
|
+
- Coder uses ReAct pattern with file system tools
|
|
37
|
+
|
|
38
|
+
### Anthropic Pattern: Planner → Generator → Evaluator
|
|
39
|
+
```
|
|
40
|
+
User prompt → Planner (product spec) → Generator (implements) ⇄ Evaluator (grades)
|
|
41
|
+
```
|
|
42
|
+
- Generator and Evaluator negotiate "sprint contracts" before coding
|
|
43
|
+
- Evaluator uses Playwright to actually click through the app
|
|
44
|
+
- Hard thresholds on grading criteria — fall below any, sprint fails
|
|
45
|
+
|
|
46
|
+
### OpenAI Pattern: Agent-to-Agent Review Loops
|
|
47
|
+
```
|
|
48
|
+
Codex generates → Codex reviews locally → Additional agent review (cloud) → Human/agent feedback → Iterate
|
|
49
|
+
```
|
|
50
|
+
- "Ralph Wiggum Loop": agent reviews its own changes, requests additional reviews, responds to feedback, iterates until all agent reviewers satisfied
|
|
51
|
+
- Humans may review PRs but aren't required to
|
|
52
|
+
- Pushed "almost all review effort towards being handled agent-to-agent"
|
|
53
|
+
|
|
54
|
+
## First-Principles Architecture
|
|
55
|
+
|
|
56
|
+
### 1. Separate Planning from Execution
|
|
57
|
+
Do not let the same agent plan and code in one step. The Planner should have read-only tools only — structurally prevented from writing code. This forces deliberation before action and prevents premature implementation.
|
|
58
|
+
|
|
59
|
+
### 2. Structured Handoffs Between Agents
|
|
60
|
+
Every handoff must be a validated data contract, not free text. Pydantic schemas, typed dicts, or structured files. The downstream agent processes objects, not unstructured descriptions.
|
|
61
|
+
|
|
62
|
+
### 3. Independent Evaluator with Hard Criteria
|
|
63
|
+
The agent that builds cannot be trusted to evaluate. Separate evaluator with explicit, gradable criteria. Each criterion has a hard threshold — not negotiable. "Claude is a poor QA agent out of the box" — evaluator requires explicit tuning to be skeptical.
|
|
64
|
+
|
|
65
|
+
### 4. Sprint Contracts (Agree on "Done" Before Work)
|
|
66
|
+
Before coding starts, the implementer and evaluator negotiate what success looks like. This prevents scope creep and provides concrete verification targets. Communication via files, not chat.
|
|
67
|
+
|
|
68
|
+
### 5. Tool Surface = Agent Capability Boundary
|
|
69
|
+
Each agent's available tools define its actual capability — not its prompt, not its role description. Remove write tools from planners. Remove subagent-spawning from subagents. Make capabilities structural, not aspirational.
|
|
70
|
+
|
|
71
|
+
## Relevance to Our Harness
|
|
72
|
+
- L2 (Planning) should be a separate agent with read-only tools
|
|
73
|
+
- L3 (Execution) should work from L2's structured output
|
|
74
|
+
- L4 (Verification) needs hard criteria with thresholds, not narrative feedback
|
|
75
|
+
- Sprint contracts between L2 and L4 before L3 begins
|