ultimate-pi 0.1.0 → 0.1.3
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/banner-v2.png +0 -0
- package/.github/workflows/lint.yml +33 -0
- package/.github/workflows/publish-github-packages.yml +35 -0
- package/.github/workflows/publish-npm.yml +32 -0
- 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 +33 -40
- 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 -16
- 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/.github/banner.png +0 -0
- package/PLAN.md +0 -11
- package/extensions/lean-ctx-enforce.ts +0 -166
- package/skills-lock.json +0 -35
- package/wiki/README.md +0 -10
- 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
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
name: firecrawl
|
|
2
|
+
|
|
3
|
+
# Firecrawl self-hosted — pre-built image variant.
|
|
4
|
+
# Uses GHCR images so no local source checkout is needed.
|
|
5
|
+
# To build locally instead, flip build: ↔ image: lines in each service.
|
|
6
|
+
|
|
7
|
+
x-common-service: &common-service
|
|
8
|
+
image: ghcr.io/firecrawl/firecrawl
|
|
9
|
+
restart: unless-stopped
|
|
10
|
+
ulimits:
|
|
11
|
+
nofile:
|
|
12
|
+
soft: 65535
|
|
13
|
+
hard: 65535
|
|
14
|
+
networks:
|
|
15
|
+
- backend
|
|
16
|
+
extra_hosts:
|
|
17
|
+
- "host.docker.internal:host-gateway"
|
|
18
|
+
logging:
|
|
19
|
+
driver: "json-file"
|
|
20
|
+
options:
|
|
21
|
+
max-size: "10m"
|
|
22
|
+
max-file: "3"
|
|
23
|
+
compress: "true"
|
|
24
|
+
|
|
25
|
+
x-common-env: &common-env
|
|
26
|
+
REDIS_URL: ${REDIS_URL:-redis://redis:6379}
|
|
27
|
+
REDIS_RATE_LIMIT_URL: ${REDIS_URL:-redis://redis:6379}
|
|
28
|
+
PLAYWRIGHT_MICROSERVICE_URL: ${PLAYWRIGHT_MICROSERVICE_URL:-http://playwright-service:3000/scrape}
|
|
29
|
+
POSTGRES_USER: ${POSTGRES_USER:-postgres}
|
|
30
|
+
POSTGRES_PASSWORD: "${POSTGRES_PASSWORD:-postgres}"
|
|
31
|
+
POSTGRES_DB: ${POSTGRES_DB:-postgres}
|
|
32
|
+
POSTGRES_HOST: ${POSTGRES_HOST:-nuq-postgres}
|
|
33
|
+
POSTGRES_PORT: ${POSTGRES_PORT:-5432}
|
|
34
|
+
USE_DB_AUTHENTICATION: ${USE_DB_AUTHENTICATION:-false}
|
|
35
|
+
NUM_WORKERS_PER_QUEUE: ${NUM_WORKERS_PER_QUEUE:-8}
|
|
36
|
+
CRAWL_CONCURRENT_REQUESTS: ${CRAWL_CONCURRENT_REQUESTS:-10}
|
|
37
|
+
MAX_CONCURRENT_JOBS: ${MAX_CONCURRENT_JOBS:-5}
|
|
38
|
+
BROWSER_POOL_SIZE: ${BROWSER_POOL_SIZE:-5}
|
|
39
|
+
OPENAI_API_KEY: ${OPENAI_API_KEY}
|
|
40
|
+
OPENAI_BASE_URL: ${OPENAI_BASE_URL}
|
|
41
|
+
MODEL_NAME: ${MODEL_NAME}
|
|
42
|
+
MODEL_EMBEDDING_NAME: ${MODEL_EMBEDDING_NAME}
|
|
43
|
+
OLLAMA_BASE_URL: ${OLLAMA_BASE_URL}
|
|
44
|
+
AUTUMN_SECRET_KEY: ${AUTUMN_SECRET_KEY}
|
|
45
|
+
SLACK_WEBHOOK_URL: ${SLACK_WEBHOOK_URL}
|
|
46
|
+
BULL_AUTH_KEY: ${BULL_AUTH_KEY}
|
|
47
|
+
TEST_API_KEY: ${TEST_API_KEY}
|
|
48
|
+
SUPABASE_ANON_TOKEN: ${SUPABASE_ANON_TOKEN}
|
|
49
|
+
SUPABASE_URL: ${SUPABASE_URL}
|
|
50
|
+
SUPABASE_SERVICE_TOKEN: ${SUPABASE_SERVICE_TOKEN}
|
|
51
|
+
SELF_HOSTED_WEBHOOK_URL: ${SELF_HOSTED_WEBHOOK_URL}
|
|
52
|
+
LOGGING_LEVEL: ${LOGGING_LEVEL}
|
|
53
|
+
PROXY_SERVER: ${PROXY_SERVER}
|
|
54
|
+
PROXY_USERNAME: ${PROXY_USERNAME}
|
|
55
|
+
PROXY_PASSWORD: ${PROXY_PASSWORD}
|
|
56
|
+
SEARXNG_ENDPOINT: ${SEARXNG_ENDPOINT}
|
|
57
|
+
SEARXNG_ENGINES: ${SEARXNG_ENGINES}
|
|
58
|
+
SEARXNG_CATEGORIES: ${SEARXNG_CATEGORIES}
|
|
59
|
+
|
|
60
|
+
services:
|
|
61
|
+
playwright-service:
|
|
62
|
+
image: ghcr.io/firecrawl/playwright-service:latest
|
|
63
|
+
restart: unless-stopped
|
|
64
|
+
environment:
|
|
65
|
+
PORT: 3000
|
|
66
|
+
PROXY_SERVER: ${PROXY_SERVER}
|
|
67
|
+
PROXY_USERNAME: ${PROXY_USERNAME}
|
|
68
|
+
PROXY_PASSWORD: ${PROXY_PASSWORD}
|
|
69
|
+
ALLOW_LOCAL_WEBHOOKS: ${ALLOW_LOCAL_WEBHOOKS}
|
|
70
|
+
BLOCK_MEDIA: ${BLOCK_MEDIA}
|
|
71
|
+
MAX_CONCURRENT_PAGES: ${CRAWL_CONCURRENT_REQUESTS:-10}
|
|
72
|
+
networks:
|
|
73
|
+
- backend
|
|
74
|
+
cpus: 2.0
|
|
75
|
+
mem_limit: 4G
|
|
76
|
+
memswap_limit: 4G
|
|
77
|
+
logging:
|
|
78
|
+
driver: "json-file"
|
|
79
|
+
options:
|
|
80
|
+
max-size: "10m"
|
|
81
|
+
max-file: "3"
|
|
82
|
+
compress: "true"
|
|
83
|
+
tmpfs:
|
|
84
|
+
- /tmp/.cache:noexec,nosuid,size=1g
|
|
85
|
+
|
|
86
|
+
api:
|
|
87
|
+
<<: *common-service
|
|
88
|
+
environment:
|
|
89
|
+
<<: *common-env
|
|
90
|
+
HOST: "0.0.0.0"
|
|
91
|
+
PORT: ${INTERNAL_PORT:-3002}
|
|
92
|
+
EXTRACT_WORKER_PORT: ${EXTRACT_WORKER_PORT:-3004}
|
|
93
|
+
WORKER_PORT: ${WORKER_PORT:-3005}
|
|
94
|
+
NUQ_RABBITMQ_URL: amqp://rabbitmq:5672
|
|
95
|
+
HARNESS_STARTUP_TIMEOUT_MS: ${HARNESS_STARTUP_TIMEOUT_MS:-60000}
|
|
96
|
+
ENV: local
|
|
97
|
+
command: node dist/src/harness.js --start-docker
|
|
98
|
+
depends_on:
|
|
99
|
+
redis:
|
|
100
|
+
condition: service_started
|
|
101
|
+
playwright-service:
|
|
102
|
+
condition: service_started
|
|
103
|
+
rabbitmq:
|
|
104
|
+
condition: service_healthy
|
|
105
|
+
ports:
|
|
106
|
+
- "${PORT:-3002}:${INTERNAL_PORT:-3002}"
|
|
107
|
+
cpus: 4.0
|
|
108
|
+
mem_limit: 8G
|
|
109
|
+
memswap_limit: 8G
|
|
110
|
+
|
|
111
|
+
redis:
|
|
112
|
+
image: redis:alpine
|
|
113
|
+
restart: unless-stopped
|
|
114
|
+
networks:
|
|
115
|
+
- backend
|
|
116
|
+
command: redis-server --bind 0.0.0.0
|
|
117
|
+
logging:
|
|
118
|
+
driver: "json-file"
|
|
119
|
+
options:
|
|
120
|
+
max-size: "5m"
|
|
121
|
+
max-file: "2"
|
|
122
|
+
compress: "true"
|
|
123
|
+
|
|
124
|
+
rabbitmq:
|
|
125
|
+
image: rabbitmq:3-management
|
|
126
|
+
restart: unless-stopped
|
|
127
|
+
networks:
|
|
128
|
+
- backend
|
|
129
|
+
command: rabbitmq-server
|
|
130
|
+
healthcheck:
|
|
131
|
+
test: ["CMD", "rabbitmq-diagnostics", "-q", "check_running"]
|
|
132
|
+
interval: 5s
|
|
133
|
+
timeout: 5s
|
|
134
|
+
retries: 3
|
|
135
|
+
start_period: 5s
|
|
136
|
+
logging:
|
|
137
|
+
driver: "json-file"
|
|
138
|
+
options:
|
|
139
|
+
max-size: "5m"
|
|
140
|
+
max-file: "2"
|
|
141
|
+
compress: "true"
|
|
142
|
+
|
|
143
|
+
nuq-postgres:
|
|
144
|
+
image: ghcr.io/firecrawl/nuq-postgres:latest
|
|
145
|
+
restart: unless-stopped
|
|
146
|
+
environment:
|
|
147
|
+
POSTGRES_USER: ${POSTGRES_USER:-postgres}
|
|
148
|
+
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-postgres}
|
|
149
|
+
POSTGRES_DB: ${POSTGRES_DB:-postgres}
|
|
150
|
+
networks:
|
|
151
|
+
- backend
|
|
152
|
+
logging:
|
|
153
|
+
driver: "json-file"
|
|
154
|
+
options:
|
|
155
|
+
max-size: "10m"
|
|
156
|
+
max-file: "3"
|
|
157
|
+
compress: "true"
|
|
158
|
+
|
|
159
|
+
# SearXNG metasearch engine — used by Firecrawl /search API when SEARXNG_ENDPOINT is set
|
|
160
|
+
searxng-valkey:
|
|
161
|
+
image: docker.io/valkey/valkey:9-alpine
|
|
162
|
+
command: valkey-server --save 30 1 --loglevel warning
|
|
163
|
+
restart: unless-stopped
|
|
164
|
+
networks:
|
|
165
|
+
- backend
|
|
166
|
+
volumes:
|
|
167
|
+
- searxng-valkey-data:/data
|
|
168
|
+
logging:
|
|
169
|
+
driver: "json-file"
|
|
170
|
+
options:
|
|
171
|
+
max-size: "5m"
|
|
172
|
+
max-file: "2"
|
|
173
|
+
compress: "true"
|
|
174
|
+
|
|
175
|
+
searxng:
|
|
176
|
+
image: docker.io/searxng/searxng:latest
|
|
177
|
+
restart: unless-stopped
|
|
178
|
+
ports:
|
|
179
|
+
- "${SEARXNG_EXTERNAL_PORT:-8080}:8080"
|
|
180
|
+
networks:
|
|
181
|
+
- backend
|
|
182
|
+
env_file: ./searxng/searxng.env
|
|
183
|
+
volumes:
|
|
184
|
+
- ./searxng/settings.yml:/etc/searxng/settings.yml
|
|
185
|
+
- searxng-data:/var/cache/searxng
|
|
186
|
+
depends_on:
|
|
187
|
+
- searxng-valkey
|
|
188
|
+
logging:
|
|
189
|
+
driver: "json-file"
|
|
190
|
+
options:
|
|
191
|
+
max-size: "10m"
|
|
192
|
+
max-file: "3"
|
|
193
|
+
compress: "true"
|
|
194
|
+
|
|
195
|
+
volumes:
|
|
196
|
+
searxng-valkey-data:
|
|
197
|
+
searxng-data:
|
|
198
|
+
|
|
199
|
+
networks:
|
|
200
|
+
backend:
|
|
201
|
+
driver: bridge
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
# SearXNG settings for Firecrawl self-hosted integration
|
|
2
|
+
# Docs: https://docs.searxng.org/admin/settings/settings.html
|
|
3
|
+
|
|
4
|
+
general:
|
|
5
|
+
debug: false
|
|
6
|
+
instance_name: "Firecrawl Search"
|
|
7
|
+
enable_metrics: false
|
|
8
|
+
|
|
9
|
+
brand:
|
|
10
|
+
docs_url: https://docs.searxng.org/
|
|
11
|
+
public_instances: https://searx.space
|
|
12
|
+
wiki_url: https://github.com/searxng/searxng/wiki
|
|
13
|
+
issue_url: https://github.com/searxng/searxng/issues
|
|
14
|
+
|
|
15
|
+
search:
|
|
16
|
+
safe_search: 0
|
|
17
|
+
autocomplete: ""
|
|
18
|
+
formats:
|
|
19
|
+
- html
|
|
20
|
+
- json
|
|
21
|
+
ban_time_on_fail: 5
|
|
22
|
+
max_ban_time_on_fail: 120
|
|
23
|
+
|
|
24
|
+
server:
|
|
25
|
+
port: 8080
|
|
26
|
+
bind_address: "0.0.0.0"
|
|
27
|
+
base_url: false
|
|
28
|
+
limiter: false
|
|
29
|
+
secret_key: "fcaacc9a734a7f85634f48aa23bfde183ef646fd0c51054f95de6fd73226b04e"
|
|
30
|
+
image_proxy: false
|
|
31
|
+
method: "GET"
|
|
32
|
+
|
|
33
|
+
valkey:
|
|
34
|
+
url: valkey://searxng-valkey:6379/0
|
|
35
|
+
|
|
36
|
+
ui:
|
|
37
|
+
default_theme: simple
|
|
38
|
+
default_locale: ""
|
|
39
|
+
|
|
40
|
+
outgoing:
|
|
41
|
+
request_timeout: 10.0
|
|
42
|
+
pool_connections: 100
|
|
43
|
+
pool_maxsize: 20
|
|
44
|
+
enable_http2: true
|
|
45
|
+
|
|
46
|
+
plugins:
|
|
47
|
+
searx.plugins.calculator.SXNGPlugin:
|
|
48
|
+
active: true
|
|
49
|
+
searx.plugins.hash_plugin.SXNGPlugin:
|
|
50
|
+
active: true
|
|
51
|
+
searx.plugins.self_info.SXNGPlugin:
|
|
52
|
+
active: true
|
|
53
|
+
searx.plugins.unit_converter.SXNGPlugin:
|
|
54
|
+
active: true
|
|
55
|
+
searx.plugins.tracker_url_remover.SXNGPlugin:
|
|
56
|
+
active: true
|
|
57
|
+
|
|
58
|
+
categories_as_tabs:
|
|
59
|
+
general:
|
|
60
|
+
images:
|
|
61
|
+
videos:
|
|
62
|
+
news:
|
|
63
|
+
|
|
64
|
+
engines:
|
|
65
|
+
- name: duckduckgo
|
|
66
|
+
engine: duckduckgo
|
|
67
|
+
shortcut: ddg
|
|
68
|
+
- name: google
|
|
69
|
+
engine: google
|
|
70
|
+
shortcut: go
|
|
71
|
+
- name: brave
|
|
72
|
+
engine: brave
|
|
73
|
+
shortcut: br
|
|
74
|
+
- name: startpage
|
|
75
|
+
engine: startpage
|
|
76
|
+
shortcut: sp
|
|
77
|
+
- name: wikipedia
|
|
78
|
+
engine: wikipedia
|
|
79
|
+
shortcut: wp
|
|
80
|
+
|
|
81
|
+
doi_resolvers:
|
|
82
|
+
oadoi.org: "https://oadoi.org/"
|
|
83
|
+
doi.org: "https://doi.org/"
|
|
84
|
+
|
|
85
|
+
default_doi_resolver: "oadoi.org"
|
package/lefthook.yml
ADDED
package/package.json
CHANGED
|
@@ -1,17 +1,56 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
2
|
+
"name": "ultimate-pi",
|
|
3
|
+
"version": "0.1.3",
|
|
4
|
+
"description": "Ultimate AI coding harness for pi.dev — extensible skills, Obsidian wiki knowledge layer, compressed context, deterministic output",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"pi-package",
|
|
7
|
+
"pi-mono",
|
|
8
|
+
"pi",
|
|
9
|
+
"ai-harness",
|
|
10
|
+
"coding-agent",
|
|
11
|
+
"obsidian-wiki",
|
|
12
|
+
"knowledge-base",
|
|
13
|
+
"context-compression",
|
|
14
|
+
"agent-skills",
|
|
15
|
+
"cursor-sdk",
|
|
16
|
+
"firecrawl",
|
|
17
|
+
"lean-ctx",
|
|
18
|
+
"vcc"
|
|
19
|
+
],
|
|
20
|
+
"license": "MIT",
|
|
21
|
+
"repository": {
|
|
22
|
+
"type": "git",
|
|
23
|
+
"url": "https://github.com/aryaniyaps/ultimate-pi"
|
|
24
|
+
},
|
|
25
|
+
"pi": {
|
|
26
|
+
"extensions": [
|
|
27
|
+
"./.pi/extensions",
|
|
28
|
+
"./.pi/providers"
|
|
29
|
+
],
|
|
30
|
+
"skills": [
|
|
31
|
+
"./.agents/skills"
|
|
32
|
+
]
|
|
33
|
+
},
|
|
34
|
+
"scripts": {
|
|
35
|
+
"check:ts": "tsc --noEmit --target ES2022 --moduleResolution nodenext --module nodenext --skipLibCheck .pi/extensions/dotenv-loader.ts",
|
|
36
|
+
"lint": "biome check",
|
|
37
|
+
"lint:fix": "biome check --fix",
|
|
38
|
+
"format": "biome format --write",
|
|
39
|
+
"format:check": "biome format",
|
|
40
|
+
"prepare": "lefthook install",
|
|
41
|
+
"test": "node --experimental-strip-types --test",
|
|
42
|
+
"test:integration": "npx -y tsx --test test/cursor-sdk-provider.integration.test.ts"
|
|
43
|
+
},
|
|
44
|
+
"devDependencies": {
|
|
45
|
+
"@biomejs/biome": "2.0.6",
|
|
46
|
+
"@mariozechner/pi-coding-agent": "0.70.2",
|
|
47
|
+
"@sinclair/typebox": "^0.34.49",
|
|
48
|
+
"lefthook": "1.11.13",
|
|
49
|
+
"typescript": "^6.0.3"
|
|
50
|
+
},
|
|
51
|
+
"dependencies": {
|
|
52
|
+
"@cursor/sdk": "^1.0.12",
|
|
53
|
+
"@sting8k/pi-vcc": "^0.3.12",
|
|
54
|
+
"asciify-image": "^0.1.10"
|
|
55
|
+
}
|
|
56
|
+
}
|
package/vault/AGENTS.md
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# Codebase Map & Architecture Wiki
|
|
2
|
+
|
|
3
|
+
Mode: GitHub / Repository (Mode B)
|
|
4
|
+
Purpose: Maintain a codebase map, architecture wiki, and software design decisions.
|
|
5
|
+
Owner: aryaniyaps
|
|
6
|
+
Created: 2026-04-28
|
|
7
|
+
|
|
8
|
+
## Structure
|
|
9
|
+
|
|
10
|
+
```
|
|
11
|
+
vault/
|
|
12
|
+
├── .raw/ # source documents: code dumps, issue exports
|
|
13
|
+
├── wiki/
|
|
14
|
+
│ ├── modules/ # one note per major module / package / service
|
|
15
|
+
│ ├── components/ # reusable UI or functional components
|
|
16
|
+
│ ├── decisions/ # Architecture Decision Records (ADRs)
|
|
17
|
+
│ ├── dependencies/ # external deps, versions, risk assessment
|
|
18
|
+
│ ├── flows/ # data flows, request paths, auth flows
|
|
19
|
+
│ └── meta/ # dashboards, lint reports, conventions
|
|
20
|
+
└── CLAUDE.md # schema and instructions (this file)
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## Conventions
|
|
24
|
+
|
|
25
|
+
- All notes use YAML frontmatter: type, status, created, updated, tags (minimum)
|
|
26
|
+
- Wikilinks use [[Note Name]] format: filenames are unique, no paths needed
|
|
27
|
+
- .raw/ contains source documents: never modify them
|
|
28
|
+
- wiki/index.md is the master catalog: update on every ingest
|
|
29
|
+
- wiki/log.md is append-only: never edit past entries
|
|
30
|
+
- New log entries go at the TOP of the file
|
|
31
|
+
|
|
32
|
+
## Operations
|
|
33
|
+
|
|
34
|
+
- Ingest: drop source in .raw/, say "ingest [filename]"
|
|
35
|
+
- Query: ask any question: Claude reads index first, then drills in
|
|
36
|
+
- Lint: say "lint the wiki" to run a health check
|
|
37
|
+
- Archive: move cold sources to .archive/ to keep .raw/ clean
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: comparison
|
|
3
|
+
title: "<% tp.file.title %>"
|
|
4
|
+
subjects:
|
|
5
|
+
- "[[Subject A]]"
|
|
6
|
+
- "[[Subject B]]"
|
|
7
|
+
dimensions:
|
|
8
|
+
- "dimension 1"
|
|
9
|
+
- "dimension 2"
|
|
10
|
+
verdict: "Replace with one-line conclusion."
|
|
11
|
+
created: <% tp.date.now("YYYY-MM-DD") %>
|
|
12
|
+
updated: <% tp.date.now("YYYY-MM-DD") %>
|
|
13
|
+
tags:
|
|
14
|
+
- comparison
|
|
15
|
+
status: seed
|
|
16
|
+
related: []
|
|
17
|
+
sources: []
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
# <% tp.file.title %>
|
|
21
|
+
|
|
22
|
+
## Overview
|
|
23
|
+
|
|
24
|
+
Replace with: why these two things are being compared and what question this answers.
|
|
25
|
+
|
|
26
|
+
## Comparison
|
|
27
|
+
|
|
28
|
+
| Dimension | Subject A | Subject B |
|
|
29
|
+
|-----------|-----------|-----------|
|
|
30
|
+
| | | |
|
|
31
|
+
| | | |
|
|
32
|
+
|
|
33
|
+
## Verdict
|
|
34
|
+
|
|
35
|
+
Replace with: one clear conclusion — which is better for what use case.
|
|
36
|
+
|
|
37
|
+
## Sources
|
|
38
|
+
|
|
39
|
+
-
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: concept
|
|
3
|
+
title: "<% tp.file.title %>"
|
|
4
|
+
complexity: intermediate
|
|
5
|
+
domain: ""
|
|
6
|
+
aliases: []
|
|
7
|
+
created: <% tp.date.now("YYYY-MM-DD") %>
|
|
8
|
+
updated: <% tp.date.now("YYYY-MM-DD") %>
|
|
9
|
+
tags:
|
|
10
|
+
- concept
|
|
11
|
+
status: seed
|
|
12
|
+
related: []
|
|
13
|
+
sources: []
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
# <% tp.file.title %>
|
|
17
|
+
|
|
18
|
+
## Definition
|
|
19
|
+
|
|
20
|
+
[What this concept is. Declarative, present tense. One clear paragraph.]
|
|
21
|
+
|
|
22
|
+
## How It Works
|
|
23
|
+
|
|
24
|
+
[Mechanism or explanation]
|
|
25
|
+
|
|
26
|
+
## Why It Matters
|
|
27
|
+
|
|
28
|
+
[Significance in this domain]
|
|
29
|
+
|
|
30
|
+
## Examples
|
|
31
|
+
|
|
32
|
+
-
|
|
33
|
+
|
|
34
|
+
## Connections
|
|
35
|
+
|
|
36
|
+
-
|
|
37
|
+
|
|
38
|
+
## Sources
|
|
39
|
+
|
|
40
|
+
-
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: decision
|
|
3
|
+
status: active
|
|
4
|
+
priority: 3
|
|
5
|
+
date: ""
|
|
6
|
+
owner: ""
|
|
7
|
+
due_date: ""
|
|
8
|
+
context: ""
|
|
9
|
+
tags: [decision]
|
|
10
|
+
created: ""
|
|
11
|
+
updated: ""
|
|
12
|
+
created: 2026-04-30
|
|
13
|
+
updated: 2026-04-30
|
|
14
|
+
---
|
|
15
|
+
# {{title}}
|
|
16
|
+
|
|
17
|
+
## Context
|
|
18
|
+
## Options Considered
|
|
19
|
+
## Decision
|
|
20
|
+
## Rationale
|
|
21
|
+
## Consequences
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: entity
|
|
3
|
+
title: "<% tp.file.title %>"
|
|
4
|
+
entity_type: person
|
|
5
|
+
role: ""
|
|
6
|
+
first_mentioned: "[[]]"
|
|
7
|
+
created: <% tp.date.now("YYYY-MM-DD") %>
|
|
8
|
+
updated: <% tp.date.now("YYYY-MM-DD") %>
|
|
9
|
+
tags:
|
|
10
|
+
- entity
|
|
11
|
+
status: seed
|
|
12
|
+
related: []
|
|
13
|
+
sources: []
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
# <% tp.file.title %>
|
|
17
|
+
|
|
18
|
+
## Overview
|
|
19
|
+
|
|
20
|
+
[Who or what this is. One paragraph.]
|
|
21
|
+
|
|
22
|
+
## Key Facts
|
|
23
|
+
|
|
24
|
+
-
|
|
25
|
+
|
|
26
|
+
## Connections
|
|
27
|
+
|
|
28
|
+
-
|
|
29
|
+
|
|
30
|
+
## Sources
|
|
31
|
+
|
|
32
|
+
-
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: module
|
|
3
|
+
path: ""
|
|
4
|
+
status: active
|
|
5
|
+
language: ""
|
|
6
|
+
purpose: ""
|
|
7
|
+
maintainer: ""
|
|
8
|
+
last_updated: ""
|
|
9
|
+
linked_issues: []
|
|
10
|
+
depends_on: []
|
|
11
|
+
used_by: []
|
|
12
|
+
tags: [module]
|
|
13
|
+
created: ""
|
|
14
|
+
updated: ""
|
|
15
|
+
created: 2026-04-30
|
|
16
|
+
updated: 2026-04-30
|
|
17
|
+
---
|
|
18
|
+
# {{title}}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: question
|
|
3
|
+
title: "<% tp.file.title %>"
|
|
4
|
+
question: ""
|
|
5
|
+
answer_quality: draft
|
|
6
|
+
created: <% tp.date.now("YYYY-MM-DD") %>
|
|
7
|
+
updated: <% tp.date.now("YYYY-MM-DD") %>
|
|
8
|
+
tags:
|
|
9
|
+
- question
|
|
10
|
+
status: developing
|
|
11
|
+
related: []
|
|
12
|
+
sources: []
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
# <% tp.file.title %>
|
|
16
|
+
|
|
17
|
+
**Question:** [restate the original query]
|
|
18
|
+
|
|
19
|
+
## Answer
|
|
20
|
+
|
|
21
|
+
[The synthesized answer, with citations to specific wiki pages]
|
|
22
|
+
|
|
23
|
+
(Source: [[]])
|
|
24
|
+
|
|
25
|
+
## Confidence
|
|
26
|
+
|
|
27
|
+
[draft | solid | definitive] — [why]
|
|
28
|
+
|
|
29
|
+
## Related Questions
|
|
30
|
+
|
|
31
|
+
-
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: source
|
|
3
|
+
title: "<% tp.file.title %>"
|
|
4
|
+
source_type: article
|
|
5
|
+
author: ""
|
|
6
|
+
date_published: <% tp.date.now("YYYY-MM-DD") %>
|
|
7
|
+
url: ""
|
|
8
|
+
confidence: medium
|
|
9
|
+
key_claims:
|
|
10
|
+
- ""
|
|
11
|
+
created: <% tp.date.now("YYYY-MM-DD") %>
|
|
12
|
+
updated: <% tp.date.now("YYYY-MM-DD") %>
|
|
13
|
+
tags:
|
|
14
|
+
- source
|
|
15
|
+
status: seed
|
|
16
|
+
related: []
|
|
17
|
+
sources: []
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
# <% tp.file.title %>
|
|
21
|
+
|
|
22
|
+
## Summary
|
|
23
|
+
|
|
24
|
+
[2-3 sentence summary of the source]
|
|
25
|
+
|
|
26
|
+
## Key Claims
|
|
27
|
+
|
|
28
|
+
-
|
|
29
|
+
|
|
30
|
+
## Entities Mentioned
|
|
31
|
+
|
|
32
|
+
- [[]] —
|
|
33
|
+
|
|
34
|
+
## Concepts Introduced
|
|
35
|
+
|
|
36
|
+
- [[]] —
|
|
37
|
+
|
|
38
|
+
## Notes
|
|
39
|
+
|
|
@@ -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
|