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,122 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: source
|
|
3
|
+
source_type: open_source_project
|
|
4
|
+
title: "Executor — The Integration Layer for AI Agents"
|
|
5
|
+
author: "Rhys Sullivan"
|
|
6
|
+
date_published: 2026-04-25
|
|
7
|
+
updated: 2026-05-01
|
|
8
|
+
status: ingested
|
|
9
|
+
url: "https://executor.sh"
|
|
10
|
+
repo: "https://github.com/RhysSullivan/executor"
|
|
11
|
+
confidence: high
|
|
12
|
+
tags:
|
|
13
|
+
- agent-tools
|
|
14
|
+
- integration-layer
|
|
15
|
+
- tool-catalog
|
|
16
|
+
- typescript-execution-layer
|
|
17
|
+
- mcp
|
|
18
|
+
- sandbox
|
|
19
|
+
- policy-engine
|
|
20
|
+
- cross-agent
|
|
21
|
+
key_claims:
|
|
22
|
+
- "Unified integration layer: one catalog, every agent, shared auth/policies/tools across Cursor, Claude Code, OpenCode"
|
|
23
|
+
- "Three eras framing: Era 1 tool calling (context bloat), Era 2 bash (poor permissions), Era 3 Executor (typed, sandboxed, shared)"
|
|
24
|
+
- "Source-agnostic plugin system: OpenAPI, GraphQL, MCP, gRPC, custom JSON schema — any source type"
|
|
25
|
+
- "Intent-based tool discovery: agents search by what they need, not memorized paths (tools.discover)"
|
|
26
|
+
- "Shared auth: sign in once, every agent shares credentials via local keychain"
|
|
27
|
+
- "Policy engine: auto-approve reads, pause on writes, wildcard rules, human-in-the-loop approval workflows"
|
|
28
|
+
- "Execution lifecycle with pause/resume: stateful executions that pause for auth/approval, resume via executor resume"
|
|
29
|
+
- "Local-first: secrets in OS keychain, nothing leaves machine. PGlite/Postgres persistence."
|
|
30
|
+
- "MCP server mode: point any MCP-compatible agent at Executor to share tool catalog, auth, and policies"
|
|
31
|
+
- "Bun monorepo architecture: apps/executor (CLI/server), apps/web (React UI), packages/ (core logic), plugins/ (source-specific)"
|
|
32
|
+
- "Sandbox: SES (Secure EcmaScript) or Deno subprocesses for isolation"
|
|
33
|
+
- "1.3K GitHub stars, 1,492 commits, MIT license"
|
|
34
|
+
created: 2026-05-02
|
|
35
|
+
|
|
36
|
+
---# Executor (RhysSullivan/executor)
|
|
37
|
+
|
|
38
|
+
> Product site: [executor.sh](https://executor.sh) | Repo: [github.com/RhysSullivan/executor](https://github.com/RhysSullivan/executor)
|
|
39
|
+
|
|
40
|
+
Executor is a **local-first integration layer** for AI agents. It gives agents a typed, sandboxed TypeScript runtime with a discoverable tool catalog spanning OpenAPI, GraphQL, MCP, and custom sources. The core insight: instead of loading every tool definition into the LLM's context window (Era 1) or giving agents raw bash access (Era 2), Executor provides a **typed runtime** where agents write code that calls typed functions (Era 3).
|
|
41
|
+
|
|
42
|
+
## Product Positioning (from executor.sh)
|
|
43
|
+
|
|
44
|
+
Executor positions itself as "Your missing execution layer" with three-era framing:
|
|
45
|
+
|
|
46
|
+
| Era | Model | Problem |
|
|
47
|
+
|-----|-------|--------|
|
|
48
|
+
| **Era 1**: Tool calling | Every schema dumped into context | Tokens wasted, poor performance |
|
|
49
|
+
| **Era 2**: Bash | Agent calls CLI directly | Poor permission model, pushes users to dangerously skip permissions |
|
|
50
|
+
| **Era 3**: Executor | Agent → executor → typed tools | Typed, sandboxed, shared across all agents |
|
|
51
|
+
|
|
52
|
+
Five pillars from landing page:
|
|
53
|
+
1. **Unified catalog**: Every integration indexed into one typed, discoverable catalog
|
|
54
|
+
2. **Shared auth**: Sign in once. Every agent shares credentials
|
|
55
|
+
3. **Policies**: Auto-approve reads. Pause on writes. Wildcard rules.
|
|
56
|
+
4. **Any agent via MCP**: Executor is an MCP server — point any agent at it
|
|
57
|
+
5. **Local-first**: Secrets in keychain. Nothing leaves machine.
|
|
58
|
+
|
|
59
|
+
## Architecture (from DeepWiki + GitHub README)
|
|
60
|
+
|
|
61
|
+
### Monorepo Structure (Bun-powered)
|
|
62
|
+
|
|
63
|
+
| Directory | Purpose | Key Packages |
|
|
64
|
+
|-----------|---------|-------------|
|
|
65
|
+
| `apps/` | Entrypoint applications | `executor` (CLI/Server), `web` (React UI) |
|
|
66
|
+
| `packages/` | Core logic and SDKs | `@executor/platform-sdk`, `@executor/codemode-core`, `@executor/server` |
|
|
67
|
+
| `plugins/` | Source-specific logic | `@executor/plugin-mcp-sdk`, `@executor/plugin-openapi-sdk` |
|
|
68
|
+
| `examples/` | Integration demos | `sqlite-sdk-consumer`, `mcp-elicitation-demo` |
|
|
69
|
+
|
|
70
|
+
### Key Components
|
|
71
|
+
- **Server** (`@executor/server`): Hono-based HTTP server, REST API (`/v1`), MCP bridge (`/mcp`). `SqlControlPlaneRuntime` manages database and execution services
|
|
72
|
+
- **CLI** (`apps/executor`): `executor web`, `executor mcp --stdio`, `executor call`, `executor tools search`, `executor resume`
|
|
73
|
+
- **Web UI** (`apps/web`): React + Tailwind + Shadcn UI. Source management, tool explorer, secret management
|
|
74
|
+
- **Persistence**: PGlite or local Postgres for workspace state, execution history, secrets
|
|
75
|
+
- **Sandbox**: SES (Secure EcmaScript) or Deno subprocesses for isolation
|
|
76
|
+
|
|
77
|
+
### Execution Lifecycle
|
|
78
|
+
Executions are stateful and persisted. Key lifecycle phases:
|
|
79
|
+
- `running` → tool execution in sandbox
|
|
80
|
+
- `waiting_for_interaction` → paused for human to provide secret or approve action
|
|
81
|
+
- `resumed` via `executor resume --execution-id <id>`
|
|
82
|
+
|
|
83
|
+
### Tool System
|
|
84
|
+
- **Source-agnostic plugin system**: OpenAPI, GraphQL, MCP, Google Discovery, custom JSON schema
|
|
85
|
+
- **Automatic source detection**: Paste a URL → Executor detects type, indexes tools, handles auth
|
|
86
|
+
- **Intent-based discovery**: `tools.discover({ query: "github issues", limit: 5 })` → returns typed paths
|
|
87
|
+
- **Typed invocation**: `tools.github.issues.list({ owner: "vercel", repo: "next.js" })`
|
|
88
|
+
|
|
89
|
+
## How Agents Use It
|
|
90
|
+
|
|
91
|
+
```typescript
|
|
92
|
+
// Discover tools by intent
|
|
93
|
+
const matches = await tools.discover({ query: "github issues", limit: 5 });
|
|
94
|
+
|
|
95
|
+
// Inspect schema
|
|
96
|
+
const detail = await tools.describe.tool({ path: matches.bestPath, includeSchemas: true });
|
|
97
|
+
|
|
98
|
+
// Call with type safety
|
|
99
|
+
const issues = await tools.github.issues.list({ owner: "vercel", repo: "next.js" });
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
## Roadmap (from executor.sh)
|
|
103
|
+
|
|
104
|
+
**Now**: Core SDK & CLI, MCP bridge, Policy engine, Local web UI, Desktop app
|
|
105
|
+
**Soon**: Team management & SaaS, Advanced approval workflows, Org-wide source catalog
|
|
106
|
+
**Later**: Customer-managed integrations, Workflow primitives (webhooks, crons), Virtual filesystems & KV stores, npm ecosystem support
|
|
107
|
+
|
|
108
|
+
## Relevance to ultimate-pi Harness
|
|
109
|
+
|
|
110
|
+
Executor is the closest reference implementation for our P43 TypeScript Execution Layer — but its scope is broader. Key intersections:
|
|
111
|
+
|
|
112
|
+
| Executor Feature | Our Equivalent | Status |
|
|
113
|
+
|-----------------|---------------|--------|
|
|
114
|
+
| TS execution runtime | P43 `harness-ts-exec.ts` | Planned |
|
|
115
|
+
| Tool catalog + discovery | Not planned (P43 has static type gen only) | **Gap** |
|
|
116
|
+
| Policy engine + approval workflows | P35 Permission Subsystem | Planned (less rich) |
|
|
117
|
+
| Shared auth across agents | Not addressed | **Gap** |
|
|
118
|
+
| Cross-agent MCP server | P39 Harness as MCP Server | Planned |
|
|
119
|
+
| Execution pause/resume | Not addressed | **Gap** |
|
|
120
|
+
| Multi-source normalization | Not in scope (our tools are harness-native) | Different scope |
|
|
121
|
+
|
|
122
|
+
**Build vs integrate decision**: Executor can be used as a dependency (MCP server mode + `executor call`). For external API integration (GitHub, Slack, Stripe), Executor is a strong candidate for integration rather than reimplementation. For harness-native tools (read, bash, edit, grep, ck_search), P43's custom TS runtime is still needed — but should borrow Executor's catalog/discovery/policy patterns.
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: source
|
|
3
|
+
status: ingested
|
|
4
|
+
source_type: github-repo
|
|
5
|
+
title: "Fallow - Codebase Intelligence for TypeScript & JavaScript"
|
|
6
|
+
author: "Bart Waardenburg (fallow-rs)"
|
|
7
|
+
date_published: 2025
|
|
8
|
+
date_fetched: 2026-05-01
|
|
9
|
+
url: "https://github.com/fallow-rs/fallow"
|
|
10
|
+
confidence: high
|
|
11
|
+
tags:
|
|
12
|
+
- codebase-intelligence
|
|
13
|
+
- static-analysis
|
|
14
|
+
- dead-code
|
|
15
|
+
- duplication
|
|
16
|
+
- complexity
|
|
17
|
+
- rust
|
|
18
|
+
- typescript
|
|
19
|
+
- javascript
|
|
20
|
+
- harness-tool
|
|
21
|
+
key_claims:
|
|
22
|
+
- "Fallow is NOT an AI assistant — it's the codebase truth layer coding agents call"
|
|
23
|
+
- "Rust-native, zero config, sub-second analysis. 91 framework plugins."
|
|
24
|
+
- "Detects dead code: unused files, exports, types, dependencies, circular deps, boundary violations"
|
|
25
|
+
- "Detects duplication: 4 modes (strict/mild/weak/semantic), suffix-array algorithm"
|
|
26
|
+
- "Complexity analysis: health scores, hotspots, refactor targets, per-file maintainability"
|
|
27
|
+
- "Architecture boundary enforcement presets: bulletproof, layered, hexagonal, feature-sliced"
|
|
28
|
+
- "Optional runtime intelligence: hot/cold path detection from V8 coverage (paid)"
|
|
29
|
+
- "MCP server for AI agent integration. JSON output with machine-actionable `actions` array per issue."
|
|
30
|
+
- "Audit mode for CI/CD: pass/warn/fail verdict. baselines for incremental adoption."
|
|
31
|
+
- "Benchmarked 5-41x faster than knip, 8-26x faster than jscpd"
|
|
32
|
+
- "1.7K GitHub stars, 31 forks, 151 releases (v2.58.0 as of May 2026)"
|
|
33
|
+
- "MIT licensed"
|
|
34
|
+
related:
|
|
35
|
+
- "[[Research: Fallow Codebase Intelligence Harness Integration]]"
|
|
36
|
+
- "[[codebase-intelligence-harness-integration]]"
|
|
37
|
+
- "[[codebase-intelligence-ecosystem-comparison]]"
|
|
38
|
+
created: 2026-05-02
|
|
39
|
+
updated: 2026-05-02
|
|
40
|
+
|
|
41
|
+
---# Fallow: Codebase Intelligence for TypeScript & JavaScript
|
|
42
|
+
|
|
43
|
+
Rust-native static analysis tool for TS/JS codebases. Built by Bart Waardenburg (fallow-rs). 1.7K GitHub stars, MIT licensed, 151 releases. Sub-second analysis on projects up to 20K+ files (Next.js benchmark: 1.72s).
|
|
44
|
+
|
|
45
|
+
## Core Capabilities
|
|
46
|
+
|
|
47
|
+
### Dead Code Detection
|
|
48
|
+
- Unused files, exports, types, enum/class members
|
|
49
|
+
- Unused dependencies (package.json)
|
|
50
|
+
- Circular dependencies (including cross-package in monorepos)
|
|
51
|
+
- Boundary violations across layers/modules
|
|
52
|
+
- Stale suppression comments
|
|
53
|
+
- Private type leaks (opt-in API hygiene)
|
|
54
|
+
- Per-file analysis (`--file src/utils.ts` for lint-staged integration)
|
|
55
|
+
- Grouping by CODEOWNERS, directory, package, or GitLab CODEOWNERS section
|
|
56
|
+
|
|
57
|
+
### Duplication Detection
|
|
58
|
+
- Suffix-array algorithm (no quadratic pairwise comparison)
|
|
59
|
+
- Four detection modes: strict (exact tokens), mild (AST-based, default), weak (different string literals), semantic (renamed variables)
|
|
60
|
+
- Cross-directory and per-file scoping
|
|
61
|
+
- Clone family grouping with `--trace src/file.ts:42`
|
|
62
|
+
|
|
63
|
+
### Complexity Analysis
|
|
64
|
+
- Health scores (0-100) with letter grades
|
|
65
|
+
- Per-file maintainability index
|
|
66
|
+
- Hotspot detection (git churn × complexity)
|
|
67
|
+
- Refactoring targets ranked by effort (low/medium/high)
|
|
68
|
+
- Static test coverage gaps
|
|
69
|
+
- Angular template analysis included
|
|
70
|
+
|
|
71
|
+
### Architecture Boundaries
|
|
72
|
+
- Preset configurations: bulletproof, layered, hexagonal, feature-sliced
|
|
73
|
+
- Zero manual config for boundary rules
|
|
74
|
+
- `fallow list --boundaries` to inspect expanded rules
|
|
75
|
+
|
|
76
|
+
### Runtime Intelligence (Optional, Paid)
|
|
77
|
+
- Hot/cold path detection from V8 coverage dumps
|
|
78
|
+
- Istanbul coverage-final.json integration
|
|
79
|
+
- CRAP scoring (Change Risk Analysis and Predictions) with exact coverage data
|
|
80
|
+
- Feature flag staleness detection
|
|
81
|
+
- Cloud analysis via `fallow coverage analyze --cloud`
|
|
82
|
+
|
|
83
|
+
## Agent Integration
|
|
84
|
+
|
|
85
|
+
```
|
|
86
|
+
npx fallow --format json
|
|
87
|
+
npx fallow audit --format json
|
|
88
|
+
npx fallow fix --dry-run --format json
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
- MCP server for Claude Code, Codex, Cursor, Windsurf
|
|
92
|
+
- Agent Skill shipped in npm package
|
|
93
|
+
- JSON output includes per-issue `actions` array with `auto_fixable` flag
|
|
94
|
+
- Audit mode returns verdict: pass/warn/fail with machine-readable exit codes
|
|
95
|
+
|
|
96
|
+
## Benchmarks (Apple M5, median of 5 runs with 2 warmups)
|
|
97
|
+
|
|
98
|
+
| Project | Files | fallow | knip v6 | Speedup |
|
|
99
|
+
|---------|-------|--------|---------|---------|
|
|
100
|
+
| zod | 174 | 25ms | 330ms | 13x |
|
|
101
|
+
| fastify | 286 | 27ms | 222ms | 8x |
|
|
102
|
+
| preact | 244 | 200ms | 2.15s | 11x |
|
|
103
|
+
| vue/core | 522 | 68ms | N/A | N/A |
|
|
104
|
+
| TanStack/query | 901 | 330ms | 1.08s | 3.3x |
|
|
105
|
+
| vite | 1,420 | 378ms | N/A | N/A |
|
|
106
|
+
| svelte | 3,337 | 363ms | 714ms | 2x |
|
|
107
|
+
| next.js | 20,416 | 1.72s | N/A | N/A |
|
|
108
|
+
|
|
109
|
+
knip does not produce valid JSON for vite, vue/core, and next.js on benchmark fixtures.
|
|
110
|
+
|
|
111
|
+
## Limitations
|
|
112
|
+
|
|
113
|
+
- Syntactic analysis only: no type-level dead code detection
|
|
114
|
+
- TS/JS only. No Python, Go, Rust, or Elixir support.
|
|
115
|
+
- Runtime intelligence requires paid license
|
|
116
|
+
|
|
117
|
+
## Relevance to ultimate-pi Harness
|
|
118
|
+
|
|
119
|
+
Fallow is the **Phase 16 deterministic quality gate** and **P15b pre-verification sandbox tool** for our harness. It provides:
|
|
120
|
+
1. Post-L4 lint-style gate with pass/warn/fail verdict (`fallow audit`)
|
|
121
|
+
2. Pre-verification scoped to changed files (`fallow audit --changed-since main`)
|
|
122
|
+
3. L5 observability substrate (health trends, complexity scores)
|
|
123
|
+
4. P21 Keep Rate proxy (health snapshots over time)
|
|
124
|
+
5. P29 error classification substrate (per-issue `actions` with `auto_fixable` flags)
|
|
125
|
+
6. MCP server integration for L3 execution layer agent tool calling
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: source
|
|
3
|
+
source_type: paper
|
|
4
|
+
title: "iMAD: Intelligent Multi-Agent Debate for Efficient and Accurate LLM Inference"
|
|
5
|
+
author: "Fan, Wei; Yoon, JinYi; Ji, Bo"
|
|
6
|
+
date_published: 2025-11-14
|
|
7
|
+
url: "https://arxiv.org/abs/2511.11306"
|
|
8
|
+
confidence: medium
|
|
9
|
+
key_claims:
|
|
10
|
+
- "Selective debate: only trigger multi-agent debate when likely beneficial"
|
|
11
|
+
- "41 linguistic features extracted from self-critique to predict debate benefit"
|
|
12
|
+
- "92% token reduction compared to always-debate"
|
|
13
|
+
- "13.5% accuracy improvement over single-agent"
|
|
14
|
+
- "Debate can overturn correct answers — not always beneficial"
|
|
15
|
+
- "Accepted at AAAI 2026 (Oral)"
|
|
16
|
+
tags:
|
|
17
|
+
- multi-agent
|
|
18
|
+
- debate
|
|
19
|
+
- consensus
|
|
20
|
+
- token-efficiency
|
|
21
|
+
created: 2026-04-30
|
|
22
|
+
updated: 2026-04-30
|
|
23
|
+
status: ingested
|
|
24
|
+
|
|
25
|
+
---# iMAD: Intelligent Multi-Agent Debate
|
|
26
|
+
|
|
27
|
+
Fan et al., AAAI 2026 (Oral).
|
|
28
|
+
|
|
29
|
+
## Core Idea
|
|
30
|
+
|
|
31
|
+
Multi-Agent Debate (MAD) is powerful but expensive. Triggering it for every query is inefficient — it may even degrade accuracy by overturning correct answers. iMAD selectively triggers debate only when likely to be beneficial.
|
|
32
|
+
|
|
33
|
+
## Mechanism
|
|
34
|
+
|
|
35
|
+
1. Single agent produces structured self-critique response
|
|
36
|
+
2. Extract 41 interpretable linguistic and semantic features (hesitation cues)
|
|
37
|
+
3. Lightweight debate-decision classifier (FocusCal loss) determines whether to trigger MAD
|
|
38
|
+
4. No test dataset-specific tuning required
|
|
39
|
+
|
|
40
|
+
## Results
|
|
41
|
+
|
|
42
|
+
| Metric | Improvement |
|
|
43
|
+
|--------|-------------|
|
|
44
|
+
| Token reduction | Up to 92% |
|
|
45
|
+
| Accuracy improvement | Up to 13.5% |
|
|
46
|
+
| Generalization | Across 6 QA datasets, 5 baselines |
|
|
47
|
+
|
|
48
|
+
## Key Insight
|
|
49
|
+
|
|
50
|
+
> Debate can overturn correct single-agent answers. Selective routing is essential for both cost and accuracy.
|
|
51
|
+
|
|
52
|
+
This directly challenges our consensus debate design (ADR-011, Phases 14-15), which currently assumes debate is always beneficial and always worth the token cost. iMAD suggests we need a **debate-gating classifier** that determines whether a given spec/plan/implementation NEEDS debate.
|
|
53
|
+
|
|
54
|
+
## Relevance to Our Consensus Debate (Phases 14-15)
|
|
55
|
+
|
|
56
|
+
Current ADR-011 design: debate always on for L1/L2/L4. iMAD suggests:
|
|
57
|
+
|
|
58
|
+
1. **Pre-debate classifier**: Before spawning debate, single agent self-critiques. If confidence is high and no hesitation cues detected, skip debate entirely.
|
|
59
|
+
2. **Token savings**: 92% token reduction on unnecessary debates — directly addresses ADR-011's ~13,000 token added cost.
|
|
60
|
+
3. **Accuracy guard**: Classifier prevents debate from overturning correct answers.
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: source
|
|
3
|
+
source_type: blog
|
|
4
|
+
title: "Benchmarks Don't Matter — Until They Do (Part 2)"
|
|
5
|
+
author: Tushar Mathur (ForgeCode / Tailcall Inc.)
|
|
6
|
+
date_published: 2026-03-16
|
|
7
|
+
url: https://forgecode.dev/blog/gpt-5-4-agent-improvements/
|
|
8
|
+
confidence: high
|
|
9
|
+
key_claims:
|
|
10
|
+
- "ForgeCode reached 81.8% on TermBench 2.0 with both GPT 5.4 and Opus 4.6 — after model-specific harness adaptation"
|
|
11
|
+
- "GPT 5.4 is sensitive to field ordering in schemas: required before properties reduces malformed tool calls"
|
|
12
|
+
- "GPT 5.4 gets confused by nested schemas: flattening reduces structural errors"
|
|
13
|
+
- "GPT 5.4 needs in-band truncation signals (body text), cannot rely on metadata inference like Opus"
|
|
14
|
+
- "GPT 5.4 requires enforced verification gates — suggestions don't work; the model stops after plausible-but-incomplete solutions"
|
|
15
|
+
- "The difference is behavioral, not capability: same benchmark score when harness compensates"
|
|
16
|
+
- "The frontier is not better models — it's better harnesses for the models we already have"
|
|
17
|
+
created: 2026-04-30
|
|
18
|
+
updated: 2026-04-30
|
|
19
|
+
status: ingested
|
|
20
|
+
tags: [#source/blog, #agents, #benchmarks, #harness-design]
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
# Benchmarks Don't Matter — Until They Do (Part 2)
|
|
24
|
+
|
|
25
|
+
Blog post by Tushar Mathur (ForgeCode) documenting how they reached #1 and #2 on TermBench 2.0 with two different models by adapting their agent harness to each model's specific failure modes.
|
|
26
|
+
|
|
27
|
+
## Core Finding
|
|
28
|
+
|
|
29
|
+
**Same benchmark score (81.8%), two different models, same harness — after model-specific adaptation.** The models didn't change. The harness did.
|
|
30
|
+
|
|
31
|
+
## Four Fixes Applied
|
|
32
|
+
|
|
33
|
+
### Fix 1: Field Ordering in Tool Schemas
|
|
34
|
+
GPT 5.4 is sensitive to where fields appear in JSON. Moving `required` before `properties` reduced malformed tool calls. The model anchors on what it sees first. Same semantics, different reliability.
|
|
35
|
+
|
|
36
|
+
### Fix 2: Flatten Nested Schemas
|
|
37
|
+
GPT 5.4 gets confused by nested `required` arrays — mixing up which belongs to which object. Flat schemas (single object layer, single `required` array) eliminated this failure mode.
|
|
38
|
+
|
|
39
|
+
### Fix 3: Make Truncation Impossible to Miss
|
|
40
|
+
Opus 4.6 inferred truncation from `total_lines` metadata. GPT 5.4 missed that inference and proceeded as if it had the full file. Adding plain-text "... truncated N more lines" in the body fixed it.
|
|
41
|
+
|
|
42
|
+
### Fix 4: Enforced Verification
|
|
43
|
+
GPT 5.4 would implement a solution, sound confident, and stop — even when the task wasn't complete. Building a verification skill and **enforcing it programmatically** (not just suggesting) caught gaps before exit. This was the single biggest improvement.
|
|
44
|
+
|
|
45
|
+
## Model Behavioral Differences
|
|
46
|
+
|
|
47
|
+
| Behavior | Opus 4.6 | GPT 5.4 |
|
|
48
|
+
|---|---|---|
|
|
49
|
+
| Schema tolerance | Tolerates messy schemas | Needs clean ordering + flat structure |
|
|
50
|
+
| Truncation | Infers from metadata | Needs explicit body-text signal |
|
|
51
|
+
| Verification | Naturally double-checks | Must be enforced programmatically |
|
|
52
|
+
| Completion | Self-aware of gaps | Stops after plausible solutions |
|
|
53
|
+
|
|
54
|
+
**Key insight**: "Drop both models into the same harness and Opus looks easier to work with. Adapt the harness to GPT 5.4's actual failure modes and the gap disappears."
|
|
55
|
+
|
|
56
|
+
## What Comes Next
|
|
57
|
+
|
|
58
|
+
The frontier is not better models — it's:
|
|
59
|
+
- Per-tool reliability tracking by model
|
|
60
|
+
- Schema-shape evals before new tools ship
|
|
61
|
+
- Verification-skill precision (when to enforce, when to skip)
|
|
62
|
+
- Trajectory-level analysis of stop-vs-continue decisions
|
|
63
|
+
- Provider-specific runtime defaults where failure modes differ
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: source
|
|
3
|
+
status: ingested
|
|
4
|
+
source_type: official-documentation
|
|
5
|
+
title: "Gemini 3 Prompting Guide"
|
|
6
|
+
author: "Google Cloud"
|
|
7
|
+
date_published: 2026-04-29
|
|
8
|
+
date_fetched: 2026-05-01
|
|
9
|
+
url: "https://docs.cloud.google.com/vertex-ai/generative-ai/docs/start/gemini-3-prompting-guide"
|
|
10
|
+
confidence: high
|
|
11
|
+
key_claims:
|
|
12
|
+
- "Temperature must stay at default 1.0 for Gemini 3 — lowering causes degraded performance"
|
|
13
|
+
- "Constraints (especially negative) must be placed at the END of the prompt"
|
|
14
|
+
- "Split-step verification prevents hallucination: verify capability → then generate"
|
|
15
|
+
- "Model treats assigned personas seriously and may ignore instructions to maintain persona"
|
|
16
|
+
- "Explicit grounding statement needed when working with hypothetical/ungrounded context"
|
|
17
|
+
- "Synthesis across multiple sources improved by placing questions at end with 'Based on the entire document above...'"
|
|
18
|
+
- "Gemini 3 is less verbose by default; must explicitly steer for conversational/chattier output"
|
|
19
|
+
tags:
|
|
20
|
+
- prompting
|
|
21
|
+
- google
|
|
22
|
+
- gemini
|
|
23
|
+
- model-specific
|
|
24
|
+
- harness-design
|
|
25
|
+
created: 2026-05-02
|
|
26
|
+
updated: 2026-05-02
|
|
27
|
+
|
|
28
|
+
---# Gemini 3 Prompting Guide
|
|
29
|
+
|
|
30
|
+
Official prompting guide published by Google Cloud for Gemini 3 models on Vertex AI. Covers prompting strategies specific to Gemini 3's architecture and reasoning capabilities.
|
|
31
|
+
|
|
32
|
+
## Critical Model-Specific Rules
|
|
33
|
+
|
|
34
|
+
### Temperature Tuning
|
|
35
|
+
- **DO NOT lower temperature below 1.0.** Gemini 3's reasoning is optimized for the default.
|
|
36
|
+
- Changing temperature may cause unexpected behavior, looping, or degraded performance, especially for math/reasoning tasks.
|
|
37
|
+
- This is a hard constraint — not a suggestion.
|
|
38
|
+
|
|
39
|
+
### Prompt Structure
|
|
40
|
+
- **Context and source material first**
|
|
41
|
+
- **Main task instructions second**
|
|
42
|
+
- **Negative, formatting, and quantitative constraints LAST**
|
|
43
|
+
- The model may drop constraints (especially negative ones) if they appear too early.
|
|
44
|
+
- "Place your core request and most critical restrictions as the final line."
|
|
45
|
+
|
|
46
|
+
### Latency
|
|
47
|
+
- Set thinking level to `LOW` for lower latency
|
|
48
|
+
- Use system instructions like `think silently`
|
|
49
|
+
|
|
50
|
+
### Preventing Hallucination
|
|
51
|
+
- **Split-step verification**: Verify capability/information exists → then generate answer. Example: "Verify with high confidence if you're able to access the New York Times home page. If you cannot verify, state 'No Info' and STOP."
|
|
52
|
+
- **Do not use broad negative constraints** like "do not infer" — these cause over-indexing and failure to perform basic logic.
|
|
53
|
+
- Instead: "You are expected to perform calculations and logical deductions based strictly on the provided text. Do not introduce external information."
|
|
54
|
+
|
|
55
|
+
### Persona Handling
|
|
56
|
+
- Model treats assigned personas **very seriously**
|
|
57
|
+
- May ignore other instructions to maintain persona adherence
|
|
58
|
+
- Explicitly define persona boundaries: "You are a data extractor. You are forbidden from clarifying, explaining, or expanding terms."
|
|
59
|
+
|
|
60
|
+
### Grounding
|
|
61
|
+
- Model may revert to training data over provided context for hypothetical/unreal scenarios
|
|
62
|
+
- When working with ungrounded context, explicitly state: "You are a strictly grounded assistant limited to the information provided in the User Context. Treat the provided context as the absolute limit of truth."
|
|
63
|
+
- This must be an explicit, strong grounding statement — not implied.
|
|
64
|
+
|
|
65
|
+
### Synthesizing Multiple Sources
|
|
66
|
+
- Model may stop processing after first relevant match in large documents
|
|
67
|
+
- Place specific instructions/questions at the END, after data context
|
|
68
|
+
- Anchor reasoning: "Based on the entire document above, provide a comprehensive answer."
|
|
69
|
+
- Explicitly ask to "Synthesize all relevant information from the text."
|
|
70
|
+
|
|
71
|
+
### Output Verbosity
|
|
72
|
+
- Gemini 3 defaults to less verbose, direct, efficient answers
|
|
73
|
+
- For conversational/chatty output, must **explicitly** steer: "Explain this as a friendly, talkative assistant."
|
|
74
|
+
|
|
75
|
+
### Distinguishing Deduction from External Info
|
|
76
|
+
- Open-ended "do not infer" or "do not guess" causes over-indexing
|
|
77
|
+
- Better: "Use the provided additional information or context for deductions and avoid using outside knowledge."
|
|
78
|
+
- Distinguish between internal deduction (good) and external information injection (bad)
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: source
|
|
3
|
+
status: ingested
|
|
4
|
+
source_type: github-issue
|
|
5
|
+
title: "gh CLI Feature Request: Parent Issues / Sub-Tasks Support"
|
|
6
|
+
author: premun (cli/cli)
|
|
7
|
+
date_published: 2025-01-23
|
|
8
|
+
url: https://github.com/cli/cli/issues/10298
|
|
9
|
+
confidence: high
|
|
10
|
+
key_claims:
|
|
11
|
+
- "`gh` CLI does not currently support setting parent issues / sub-tasks on issue create/edit"
|
|
12
|
+
- "Feature request: --set-parent [ID] and --unset-parent [ID] flags on gh issue"
|
|
13
|
+
- "Linked to PR #13057 (in progress as of April 2026)"
|
|
14
|
+
- "Labeled: core (not accepting outside PRs), enhancement, gh-issue, needs-product"
|
|
15
|
+
tags:
|
|
16
|
+
- github
|
|
17
|
+
- cli
|
|
18
|
+
- feature-request
|
|
19
|
+
- sub-issues
|
|
20
|
+
related:
|
|
21
|
+
- "[[Research: GitHub Issues as Harness Spec Storage]]"
|
|
22
|
+
- "[[gh-sub-issue-extension]]"
|
|
23
|
+
created: 2026-05-02
|
|
24
|
+
updated: 2026-05-02
|
|
25
|
+
|
|
26
|
+
---# gh CLI Feature Request: Parent Issues / Sub-Tasks
|
|
27
|
+
|
|
28
|
+
Official feature request on `cli/cli` repo (44.2k stars) requesting native sub-issue support in `gh issue create` and `gh issue edit`.
|
|
29
|
+
|
|
30
|
+
## Status
|
|
31
|
+
|
|
32
|
+
- **Opened**: January 23, 2025
|
|
33
|
+
- **Status**: Open (as of April 2026)
|
|
34
|
+
- **Labels**: `core` (not accepting PRs from outside contributors), `enhancement`, `gh-issue`, `needs-product`
|
|
35
|
+
- **PR**: [#13057](https://github.com/cli/cli/pull/13057) — linked, in development
|
|
36
|
+
|
|
37
|
+
## Proposed Solution
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
# Create issue with parent
|
|
41
|
+
gh issue create --title "..." --set-parent 123
|
|
42
|
+
|
|
43
|
+
# Edit existing issue
|
|
44
|
+
gh issue edit 456 --set-parent 123
|
|
45
|
+
gh issue edit 456 --unset-parent
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
## Harness Impact
|
|
49
|
+
|
|
50
|
+
When native support lands in `gh` CLI, the harness can drop the `gh-sub-issue` extension dependency and use `gh issue create --parent` directly. Until then, the extension or raw `gh api` GraphQL calls are required.
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: source
|
|
3
|
+
status: ingested
|
|
4
|
+
source_type: github-repo
|
|
5
|
+
title: "gh-sub-issue: GitHub CLI Extension for Sub-Issues"
|
|
6
|
+
author: yahsan2
|
|
7
|
+
date_published: 2025
|
|
8
|
+
url: https://github.com/yahsan2/gh-sub-issue
|
|
9
|
+
confidence: high
|
|
10
|
+
key_claims:
|
|
11
|
+
- "Community `gh` CLI extension for managing sub-issues (parent-child relationships)"
|
|
12
|
+
- "Supports add, create, list, remove operations on sub-issues"
|
|
13
|
+
- "Uses GitHub GraphQL API under the hood, not custom reference schemes"
|
|
14
|
+
- "Cross-repository support"
|
|
15
|
+
- "JSON output for machine readability"
|
|
16
|
+
- "110 stars, 35 commits, MIT license"
|
|
17
|
+
- "Non-destructive: links existing issues without closing or recreating them"
|
|
18
|
+
tags:
|
|
19
|
+
- github
|
|
20
|
+
- cli
|
|
21
|
+
- sub-issues
|
|
22
|
+
- gh-extension
|
|
23
|
+
related:
|
|
24
|
+
- "[[Research: GitHub Issues as Harness Spec Storage]]"
|
|
25
|
+
- "[[gh-cli-sub-issue-rfc]]"
|
|
26
|
+
created: 2026-05-02
|
|
27
|
+
updated: 2026-05-02
|
|
28
|
+
|
|
29
|
+
---# gh-sub-issue: GitHub CLI Extension for Sub-Issues
|
|
30
|
+
|
|
31
|
+
Community `gh` CLI extension (110 stars, MIT) bridging the gap where `gh` CLI lacks native sub-issue support.
|
|
32
|
+
|
|
33
|
+
## Commands
|
|
34
|
+
|
|
35
|
+
| Command | Purpose |
|
|
36
|
+
|---------|---------|
|
|
37
|
+
| `gh sub-issue add <parent> <child>` | Link existing issue as child of parent |
|
|
38
|
+
| `gh sub-issue create --parent <id> --title "..."` | Create new child issue |
|
|
39
|
+
| `gh sub-issue list <parent>` | List all children of a parent |
|
|
40
|
+
| `gh sub-issue remove <parent> <child>` | Unlink child from parent |
|
|
41
|
+
|
|
42
|
+
## Key Features
|
|
43
|
+
|
|
44
|
+
- **JSON output**: `--json number,title,state,labels` for machine parsing
|
|
45
|
+
- **Cross-repo**: `--repo owner/repo` to work across repositories
|
|
46
|
+
- **Force remove**: `--force` to skip confirmation prompts
|
|
47
|
+
- **Output formats**: TTY (colored), plain text, JSON
|
|
48
|
+
- **Non-destructive**: Uses native GitHub sub-issue relationships, not custom reference schemes
|
|
49
|
+
|
|
50
|
+
## Installation
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
gh extension install yahsan2/gh-sub-issue
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
Requirements: `gh` CLI 2.0.0+, GitHub account with repo write access.
|
|
57
|
+
|
|
58
|
+
## Harness Integration
|
|
59
|
+
|
|
60
|
+
This extension is the primary CLI tool for creating harness task sub-issues from L2 structured planning. Example harness workflow:
|
|
61
|
+
|
|
62
|
+
```bash
|
|
63
|
+
# Create spec issue
|
|
64
|
+
SPEC_ID=$(gh issue create --title "Spec: Add user auth" --body "..." --label harness-spec,layer-1 --json number -q .number)
|
|
65
|
+
|
|
66
|
+
# Create task sub-issues
|
|
67
|
+
gh sub-issue create --parent $SPEC_ID --title "P1: Design DB schema" --label harness-task
|
|
68
|
+
gh sub-issue create --parent $SPEC_ID --title "P2: Implement JWT tokens" --label harness-task
|
|
69
|
+
|
|
70
|
+
# Check progress
|
|
71
|
+
gh sub-issue list $SPEC_ID --json number,title,state
|
|
72
|
+
```
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: source
|
|
3
|
+
status: ingested
|
|
4
|
+
source_type: github-discussion
|
|
5
|
+
title: "GitHub Community: No Issues to Enable in Forked Repo"
|
|
6
|
+
author: guangli-dai, tarak6984, secretnamebasis
|
|
7
|
+
date_published: 2025-06-02
|
|
8
|
+
url: https://github.com/orgs/community/discussions/161368
|
|
9
|
+
confidence: high
|
|
10
|
+
key_claims:
|
|
11
|
+
- "GitHub historically blocked enabling Issues on forked repositories independently"
|
|
12
|
+
- "As of June 2025, users reported no Issues checkbox in fork Settings > General > Features"
|
|
13
|
+
- "As of December 2025, a user confirmed Issues CAN be enabled on forks via Settings"
|
|
14
|
+
- "Workaround for older/restricted forks: create new repo, use Discussions, or external trackers"
|
|
15
|
+
- "Issue tracking is designed to be centralized in the original repo; forks are copies for contribution, not independent projects"
|
|
16
|
+
tags:
|
|
17
|
+
- github
|
|
18
|
+
- fork
|
|
19
|
+
- issues
|
|
20
|
+
- multi-tenant
|
|
21
|
+
related:
|
|
22
|
+
- "[[Research: GitHub Issues as Harness Spec Storage]]"
|
|
23
|
+
created: 2026-05-02
|
|
24
|
+
updated: 2026-05-02
|
|
25
|
+
|
|
26
|
+
---# GitHub Community: Fork Issues Discussion
|
|
27
|
+
|
|
28
|
+
GitHub Community discussion #161368 tracking the evolution of issue support on forked repositories.
|
|
29
|
+
|
|
30
|
+
## Timeline
|
|
31
|
+
|
|
32
|
+
| Date | Event |
|
|
33
|
+
|------|-------|
|
|
34
|
+
| Jun 2, 2025 | `guangli-dai` reports: No "Issues" checkbox in fork's Settings → Features |
|
|
35
|
+
| Jun 3, 2025 | `tarak6984` confirms: "GitHub currently does NOT allow enabling Issues on forked repositories independently" |
|
|
36
|
+
| Dec 30, 2025 | `secretnamebasis` reports: "Under /settings there is a way to check the issues box on a fork" — feature added |
|
|
37
|
+
|
|
38
|
+
## Relevance to Harness
|
|
39
|
+
|
|
40
|
+
Forks of ultimate-pi projects need their own issue tracker for spec storage. This discussion confirms:
|
|
41
|
+
1. **Forks CAN now enable issues** (post-Dec 2025). No fundamental blocker.
|
|
42
|
+
2. **Upstream issues are never copied** — each fork starts with a clean slate.
|
|
43
|
+
3. **`gh` CLI must be reconfigured** for the fork's repo, not upstream.
|
|
44
|
+
4. **Local cache isolation is critical** — `.pi/harness/specs/` must be gitignored to prevent stale upstream refs from leaking into forks.
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: source
|
|
3
|
+
status: ingested
|
|
4
|
+
source_type: documentation
|
|
5
|
+
title: "GitHub Issue Dependencies — Official Documentation"
|
|
6
|
+
author: GitHub Docs
|
|
7
|
+
date_published: 2025-04
|
|
8
|
+
url: https://docs.github.com/en/issues/tracking-your-work-with-issues/using-issues/creating-issue-dependencies
|
|
9
|
+
confidence: high
|
|
10
|
+
key_claims:
|
|
11
|
+
- "Issue dependencies define blocked-by and blocking relationships between issues"
|
|
12
|
+
- "Dependencies are distinct from sub-issues — they define execution order, not decomposition"
|
|
13
|
+
- "Blocked issues show a Blocked icon on project boards and Issues page"
|
|
14
|
+
- "Available on Free, Pro, Team, and Enterprise Cloud plans"
|
|
15
|
+
- "Requires at least triage permissions"
|
|
16
|
+
tags:
|
|
17
|
+
- github
|
|
18
|
+
- issues
|
|
19
|
+
- dependencies
|
|
20
|
+
- project-management
|
|
21
|
+
related:
|
|
22
|
+
- "[[Research: GitHub Issues as Harness Spec Storage]]"
|
|
23
|
+
- "[[github-sub-issues-docs]]"
|
|
24
|
+
created: 2026-05-02
|
|
25
|
+
updated: 2026-05-02
|
|
26
|
+
|
|
27
|
+
---# GitHub Issue Dependencies — Official Documentation
|
|
28
|
+
|
|
29
|
+
GitHub's official documentation for issue dependencies (blocked-by / blocking relationships).
|
|
30
|
+
|
|
31
|
+
## Key Capabilities
|
|
32
|
+
|
|
33
|
+
- **Blocked by**: Mark an issue as dependent on another issue's completion
|
|
34
|
+
- **Blocking**: Mark an issue as preventing another from progressing
|
|
35
|
+
- **Visual indicators**: Blocked icon on project boards and Issues list
|
|
36
|
+
- **Multiple dependencies**: An issue can be blocked by multiple issues, and block multiple issues
|
|
37
|
+
|
|
38
|
+
## Distinction from Sub-Issues
|
|
39
|
+
|
|
40
|
+
| Feature | Sub-Issues | Dependencies |
|
|
41
|
+
|---------|------------|--------------|
|
|
42
|
+
| Relationship | Parent-child (decomposition) | Blocked-by / blocking (ordering) |
|
|
43
|
+
| Progress roll-up | Automatic (parent shows child completion %) | Manual (no auto-status from deps) |
|
|
44
|
+
| Hierarchical limit | 8 levels deep | No depth limit (graph) |
|
|
45
|
+
| Per-parent limit | 100 children | No limit |
|
|
46
|
+
|
|
47
|
+
## Relevance to Harness
|
|
48
|
+
|
|
49
|
+
L2 Structured Planning produces a task DAG. Dependencies map the DAG edges — "Task B cannot start until Task A completes." Sub-issues map the tree structure — "Spec S decomposes into Tasks A, B, C." Both are needed for full task topology.
|