@shakudo/kaji-setup-external 1.0.0
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/README.md +155 -0
- package/assets/skills/ci-cd/.claude-plugin/plugin.json +8 -0
- package/assets/skills/ci-cd/SKILL.md +573 -0
- package/assets/skills/ci-cd/assets/templates/github-actions/docker-build.yml +164 -0
- package/assets/skills/ci-cd/assets/templates/github-actions/go-ci.yml +420 -0
- package/assets/skills/ci-cd/assets/templates/github-actions/node-ci.yml +313 -0
- package/assets/skills/ci-cd/assets/templates/github-actions/python-ci.yml +388 -0
- package/assets/skills/ci-cd/assets/templates/github-actions/security-scan.yml +416 -0
- package/assets/skills/ci-cd/assets/templates/gitlab-ci/docker-build.yml +298 -0
- package/assets/skills/ci-cd/assets/templates/gitlab-ci/go-ci.yml +548 -0
- package/assets/skills/ci-cd/assets/templates/gitlab-ci/node-ci.yml +334 -0
- package/assets/skills/ci-cd/assets/templates/gitlab-ci/python-ci.yml +472 -0
- package/assets/skills/ci-cd/assets/templates/gitlab-ci/security-scan.yml +479 -0
- package/assets/skills/ci-cd/references/best_practices.md +675 -0
- package/assets/skills/ci-cd/references/devsecops.md +862 -0
- package/assets/skills/ci-cd/references/optimization.md +651 -0
- package/assets/skills/ci-cd/references/security.md +611 -0
- package/assets/skills/ci-cd/references/troubleshooting.md +656 -0
- package/assets/skills/ci-cd/scripts/ci_health.py +301 -0
- package/assets/skills/ci-cd/scripts/pipeline_analyzer.py +440 -0
- package/assets/skills/context-optimization/CONTRIBUTING.md +78 -0
- package/assets/skills/context-optimization/LICENSE +22 -0
- package/assets/skills/context-optimization/README.md +228 -0
- package/assets/skills/context-optimization/SKILL.md +104 -0
- package/assets/skills/context-optimization/docs/agentskills.md +1264 -0
- package/assets/skills/context-optimization/docs/blogs.md +1230 -0
- package/assets/skills/context-optimization/docs/claude_research.md +85 -0
- package/assets/skills/context-optimization/docs/compression.md +298 -0
- package/assets/skills/context-optimization/docs/gemini_research.md +22 -0
- package/assets/skills/context-optimization/docs/hncapsule.md +92 -0
- package/assets/skills/context-optimization/docs/netflix_context.md +10 -0
- package/assets/skills/context-optimization/docs/vercel_tool.md +140 -0
- package/assets/skills/context-optimization/examples/book-sft-pipeline/README.md +78 -0
- package/assets/skills/context-optimization/examples/book-sft-pipeline/SKILL.md +380 -0
- package/assets/skills/context-optimization/examples/book-sft-pipeline/examples/gertrude-stein/README.md +168 -0
- package/assets/skills/context-optimization/examples/book-sft-pipeline/examples/gertrude-stein/dataset_sample.jsonl +5 -0
- package/assets/skills/context-optimization/examples/book-sft-pipeline/examples/gertrude-stein/pangram/Screenshot 2025-12-27 at 3.05.04/342/200/257AM.png +0 -0
- package/assets/skills/context-optimization/examples/book-sft-pipeline/examples/gertrude-stein/pangram/Screenshot 2025-12-27 at 3.05.36/342/200/257AM.png +0 -0
- package/assets/skills/context-optimization/examples/book-sft-pipeline/examples/gertrude-stein/pangram/Screenshot 2025-12-27 at 3.07.18/342/200/257AM.png +0 -0
- package/assets/skills/context-optimization/examples/book-sft-pipeline/examples/gertrude-stein/sample_outputs.md +63 -0
- package/assets/skills/context-optimization/examples/book-sft-pipeline/examples/gertrude-stein/training_config.json +80 -0
- package/assets/skills/context-optimization/examples/book-sft-pipeline/references/segmentation-strategies.md +324 -0
- package/assets/skills/context-optimization/examples/book-sft-pipeline/references/tinker-format.md +211 -0
- package/assets/skills/context-optimization/examples/book-sft-pipeline/references/tinker.txt +3176 -0
- package/assets/skills/context-optimization/examples/book-sft-pipeline/scripts/pipeline_example.py +187 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/AGENT.md +35 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/HOW-SKILLS-BUILT-THIS.md +407 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/README.md +209 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/SKILL.md +203 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/SKILLS-MAPPING.md +219 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/agents/AGENTS.md +82 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/agents/scripts/content_ideas.py +132 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/agents/scripts/idea_to_draft.py +181 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/agents/scripts/stale_contacts.py +139 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/agents/scripts/weekly_review.py +121 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/content/CONTENT.md +88 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/content/calendar.md +108 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/content/engagement.jsonl +2 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/content/ideas.jsonl +2 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/content/posts.jsonl +2 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/content/templates/linkedin-post.md +102 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/content/templates/newsletter.md +92 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/content/templates/thread.md +73 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/examples/content-workflow.md +204 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/examples/meeting-prep.md +243 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/identity/IDENTITY.md +46 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/identity/bio-variants.md +101 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/identity/brand.md +165 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/identity/prompts/content-generation.xml +46 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/identity/prompts/reply-generator.xml +40 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/identity/values.yaml +60 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/identity/voice.md +165 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/knowledge/KNOWLEDGE.md +85 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/knowledge/bookmarks.jsonl +2 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/knowledge/competitors.md +117 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/knowledge/learning.yaml +74 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/knowledge/research/_template.md +79 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/network/NETWORK.md +110 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/network/circles.yaml +80 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/network/contacts.jsonl +2 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/network/interactions.jsonl +2 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/network/intros.md +92 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/operations/OPERATIONS.md +75 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/operations/goals.yaml +83 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/operations/meetings.jsonl +2 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/operations/metrics.jsonl +2 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/operations/reviews/_weekly_template.md +114 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/operations/todos.md +76 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/package.json +41 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/references/file-formats.md +386 -0
- package/assets/skills/context-optimization/examples/digital-brain-skill/scripts/install.sh +79 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/README.md +620 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/SKILL.md +221 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/docs/agentthinking.md +63 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/docs/interleavedthinking.md +610 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/docs/m2-1.md +224 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/examples/01_basic_capture.py +76 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/examples/02_tool_usage.py +187 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/examples/03_full_optimization.py +1222 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/generated_skills/comprehensive-research-agent/SKILL.md +90 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/generated_skills/comprehensive-research-agent/references/optimization_summary.json +9 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/generated_skills/comprehensive-research-agent/references/optimized_prompt.txt +1 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/generated_skills/comprehensive-research-agent/references/patterns_found.json +205 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/final_prompt.txt +67 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_1/analysis.txt +48 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_1/optimization.txt +15 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_1/optimized_prompt.txt +1 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_1/trace.txt +178 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_10/analysis.txt +47 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_10/trace.txt +162 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_2/analysis.txt +48 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_2/optimization.txt +130 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_2/optimized_prompt.txt +72 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_2/trace.txt +156 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_3/analysis.txt +46 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_3/optimization.txt +147 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_3/optimized_prompt.txt +84 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_3/trace.txt +159 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_4/analysis.txt +46 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_4/optimization.txt +134 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_4/optimized_prompt.txt +67 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_4/trace.txt +165 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_5/analysis.txt +50 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_5/optimization.txt +135 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_5/optimized_prompt.txt +71 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_5/trace.txt +146 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_6/analysis.txt +15 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_6/optimization.txt +15 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_6/optimized_prompt.txt +1 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_6/trace.txt +147 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_7/analysis.txt +46 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_7/optimization.txt +103 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_7/optimized_prompt.txt +45 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_7/trace.txt +134 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_8/analysis.txt +47 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_8/optimization.txt +114 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_8/optimized_prompt.txt +60 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_8/trace.txt +135 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_9/analysis.txt +44 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_9/optimization.txt +106 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_9/optimized_prompt.txt +51 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/iteration_9/trace.txt +170 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/optimization_artifacts/summary.json +11 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/pyproject.toml +70 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/reasoning_trace_optimizer/__init__.py +53 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/reasoning_trace_optimizer/analyzer.py +465 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/reasoning_trace_optimizer/capture.py +417 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/reasoning_trace_optimizer/cli.py +271 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/reasoning_trace_optimizer/loop.py +468 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/reasoning_trace_optimizer/models.py +193 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/reasoning_trace_optimizer/optimizer.py +449 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/reasoning_trace_optimizer/skill_generator.py +502 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/tests/__init__.py +1 -0
- package/assets/skills/context-optimization/examples/interleaved_thinking/tests/test_models.py +144 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/.prettierrc +8 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/CONTRIBUTING.md +78 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/LICENSE +21 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/README.md +659 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/agents/evaluator-agent/evaluator-agent.md +177 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/agents/index.md +114 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/agents/orchestrator-agent/orchestrator-agent.md +205 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/agents/research-agent/research-agent.md +183 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/env.example +6 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/eslint.config.js +18 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/examples/basic-evaluation.ts +89 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/examples/full-evaluation-workflow.ts +136 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/examples/generate-rubric.ts +67 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/examples/pairwise-comparison.ts +97 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/package.json +79 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/prompts/agent-system/orchestrator-prompt.md +197 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/prompts/evaluation/direct-scoring-prompt.md +153 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/prompts/evaluation/pairwise-comparison-prompt.md +200 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/prompts/index.md +138 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/prompts/research/research-synthesis-prompt.md +171 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/skills/context-fundamentals/context-fundamentals.md +114 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/skills/index.md +79 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/skills/llm-evaluator/llm-evaluator.md +77 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/skills/tool-design/tool-design.md +198 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/src/agents/evaluator.ts +112 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/src/agents/index.ts +3 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/src/config/index.ts +18 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/src/index.ts +19 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/src/tools/evaluation/direct-score.ts +164 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/src/tools/evaluation/generate-rubric.ts +161 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/src/tools/evaluation/index.ts +9 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/src/tools/evaluation/pairwise-compare.ts +255 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/tests/evaluation.test.ts +233 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/tests/setup.ts +27 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/tests/skills.test.ts +213 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/tools/evaluation/direct-score.md +159 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/tools/evaluation/generate-rubric.md +189 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/tools/evaluation/pairwise-compare.md +182 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/tools/index.md +141 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/tools/orchestration/delegate-to-agent.md +171 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/tools/research/read-url.md +162 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/tools/research/web-search.md +128 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/tsconfig.json +26 -0
- package/assets/skills/context-optimization/examples/llm-as-judge-skills/vitest.config.ts +20 -0
- package/assets/skills/context-optimization/examples/x-to-book-system/PRD.md +644 -0
- package/assets/skills/context-optimization/examples/x-to-book-system/README.md +181 -0
- package/assets/skills/context-optimization/examples/x-to-book-system/SKILLS-MAPPING.md +187 -0
- package/assets/skills/context-optimization/researcher/example_output.md +75 -0
- package/assets/skills/context-optimization/researcher/llm-as-a-judge.md +362 -0
- package/assets/skills/context-optimization/skills/advanced-evaluation/SKILL.md +454 -0
- package/assets/skills/context-optimization/skills/advanced-evaluation/references/bias-mitigation.md +288 -0
- package/assets/skills/context-optimization/skills/advanced-evaluation/references/implementation-patterns.md +315 -0
- package/assets/skills/context-optimization/skills/advanced-evaluation/references/metrics-guide.md +331 -0
- package/assets/skills/context-optimization/skills/advanced-evaluation/scripts/evaluation_example.py +337 -0
- package/assets/skills/context-optimization/skills/bdi-mental-states/SKILL.md +295 -0
- package/assets/skills/context-optimization/skills/bdi-mental-states/references/bdi-ontology-core.md +207 -0
- package/assets/skills/context-optimization/skills/bdi-mental-states/references/framework-integration.md +582 -0
- package/assets/skills/context-optimization/skills/bdi-mental-states/references/rdf-examples.md +315 -0
- package/assets/skills/context-optimization/skills/bdi-mental-states/references/sparql-competency.md +420 -0
- package/assets/skills/context-optimization/skills/context-compression/SKILL.md +265 -0
- package/assets/skills/context-optimization/skills/context-compression/references/evaluation-framework.md +213 -0
- package/assets/skills/context-optimization/skills/context-compression/scripts/compression_evaluator.py +658 -0
- package/assets/skills/context-optimization/skills/context-degradation/SKILL.md +231 -0
- package/assets/skills/context-optimization/skills/context-degradation/references/patterns.md +314 -0
- package/assets/skills/context-optimization/skills/context-degradation/scripts/degradation_detector.py +419 -0
- package/assets/skills/context-optimization/skills/context-fundamentals/SKILL.md +185 -0
- package/assets/skills/context-optimization/skills/context-fundamentals/references/context-components.md +283 -0
- package/assets/skills/context-optimization/skills/context-fundamentals/scripts/context_manager.py +370 -0
- package/assets/skills/context-optimization/skills/context-optimization/SKILL.md +179 -0
- package/assets/skills/context-optimization/skills/context-optimization/references/optimization_techniques.md +272 -0
- package/assets/skills/context-optimization/skills/context-optimization/scripts/compaction.py +379 -0
- package/assets/skills/context-optimization/skills/evaluation/SKILL.md +231 -0
- package/assets/skills/context-optimization/skills/evaluation/references/metrics.md +339 -0
- package/assets/skills/context-optimization/skills/evaluation/scripts/evaluator.py +474 -0
- package/assets/skills/context-optimization/skills/filesystem-context/SKILL.md +321 -0
- package/assets/skills/context-optimization/skills/filesystem-context/references/implementation-patterns.md +549 -0
- package/assets/skills/context-optimization/skills/filesystem-context/scripts/filesystem_context.py +353 -0
- package/assets/skills/context-optimization/skills/hosted-agents/SKILL.md +279 -0
- package/assets/skills/context-optimization/skills/hosted-agents/references/infrastructure-patterns.md +700 -0
- package/assets/skills/context-optimization/skills/hosted-agents/scripts/sandbox_manager.py +495 -0
- package/assets/skills/context-optimization/skills/memory-systems/SKILL.md +221 -0
- package/assets/skills/context-optimization/skills/memory-systems/references/implementation.md +458 -0
- package/assets/skills/context-optimization/skills/memory-systems/scripts/memory_store.py +396 -0
- package/assets/skills/context-optimization/skills/multi-agent-patterns/SKILL.md +255 -0
- package/assets/skills/context-optimization/skills/multi-agent-patterns/references/frameworks.md +433 -0
- package/assets/skills/context-optimization/skills/multi-agent-patterns/scripts/coordination.py +439 -0
- package/assets/skills/context-optimization/skills/project-development/SKILL.md +342 -0
- package/assets/skills/context-optimization/skills/project-development/references/case-studies.md +388 -0
- package/assets/skills/context-optimization/skills/project-development/references/pipeline-patterns.md +610 -0
- package/assets/skills/context-optimization/skills/project-development/scripts/pipeline_template.py +677 -0
- package/assets/skills/context-optimization/skills/tool-design/SKILL.md +311 -0
- package/assets/skills/context-optimization/skills/tool-design/references/architectural_reduction.md +210 -0
- package/assets/skills/context-optimization/skills/tool-design/references/best_practices.md +176 -0
- package/assets/skills/context-optimization/skills/tool-design/scripts/description_generator.py +237 -0
- package/assets/skills/context-optimization/template/SKILL.md +98 -0
- package/assets/skills/dremio-analytics/SKILL.md +287 -0
- package/assets/skills/elevenlabs-voice/SKILL.md +269 -0
- package/assets/skills/git-workflow/SKILL.md +266 -0
- package/assets/skills/gitops-workflows/.claude-plugin/plugin.json +8 -0
- package/assets/skills/gitops-workflows/SKILL.md +568 -0
- package/assets/skills/gitops-workflows/assets/applicationsets/cluster-generator.yaml +32 -0
- package/assets/skills/gitops-workflows/assets/argocd/install-argocd-3.x.yaml +92 -0
- package/assets/skills/gitops-workflows/assets/flux/flux-bootstrap-github.sh +49 -0
- package/assets/skills/gitops-workflows/assets/flux/oci-helmrelease.yaml +38 -0
- package/assets/skills/gitops-workflows/assets/progressive-delivery/argo-rollouts-canary.yaml +62 -0
- package/assets/skills/gitops-workflows/assets/secrets/sops-age-config.yaml +33 -0
- package/assets/skills/gitops-workflows/references/argocd_vs_flux.md +243 -0
- package/assets/skills/gitops-workflows/references/best_practices.md +160 -0
- package/assets/skills/gitops-workflows/references/multi_cluster.md +80 -0
- package/assets/skills/gitops-workflows/references/oci_artifacts.md +290 -0
- package/assets/skills/gitops-workflows/references/progressive_delivery.md +94 -0
- package/assets/skills/gitops-workflows/references/repo_patterns.md +184 -0
- package/assets/skills/gitops-workflows/references/secret_management.md +213 -0
- package/assets/skills/gitops-workflows/references/troubleshooting.md +134 -0
- package/assets/skills/gitops-workflows/scripts/applicationset_generator.py +156 -0
- package/assets/skills/gitops-workflows/scripts/check_argocd_health.py +275 -0
- package/assets/skills/gitops-workflows/scripts/check_flux_health.py +418 -0
- package/assets/skills/gitops-workflows/scripts/oci_artifact_checker.py +150 -0
- package/assets/skills/gitops-workflows/scripts/promotion_validator.py +88 -0
- package/assets/skills/gitops-workflows/scripts/secret_audit.py +178 -0
- package/assets/skills/gitops-workflows/scripts/sync_drift_detector.py +144 -0
- package/assets/skills/gitops-workflows/scripts/validate_gitops_repo.py +299 -0
- package/assets/skills/iac-terraform/.claude-plugin/plugin.json +8 -0
- package/assets/skills/iac-terraform/SKILL.md +653 -0
- package/assets/skills/iac-terraform/assets/templates/MODULE_TEMPLATE.md +386 -0
- package/assets/skills/iac-terraform/assets/workflows/github-actions-terraform.yml +224 -0
- package/assets/skills/iac-terraform/assets/workflows/github-actions-terragrunt.yml +236 -0
- package/assets/skills/iac-terraform/assets/workflows/gitlab-ci-terraform.yml +184 -0
- package/assets/skills/iac-terraform/references/best_practices.md +709 -0
- package/assets/skills/iac-terraform/references/cost_optimization.md +665 -0
- package/assets/skills/iac-terraform/references/troubleshooting.md +635 -0
- package/assets/skills/iac-terraform/scripts/init_module.py +319 -0
- package/assets/skills/iac-terraform/scripts/inspect_state.py +232 -0
- package/assets/skills/iac-terraform/scripts/validate_module.py +227 -0
- package/assets/skills/k8s-troubleshooter/.claude-plugin/plugin.json +8 -0
- package/assets/skills/k8s-troubleshooter/SKILL.md +336 -0
- package/assets/skills/k8s-troubleshooter/references/common_issues.md +582 -0
- package/assets/skills/k8s-troubleshooter/references/helm_troubleshooting.md +708 -0
- package/assets/skills/k8s-troubleshooter/references/incident_response.md +466 -0
- package/assets/skills/k8s-troubleshooter/references/performance_troubleshooting.md +687 -0
- package/assets/skills/k8s-troubleshooter/scripts/check_namespace.py +500 -0
- package/assets/skills/k8s-troubleshooter/scripts/cluster_health.py +223 -0
- package/assets/skills/k8s-troubleshooter/scripts/diagnose_pod.py +157 -0
- package/assets/skills/mattermost-notify/SKILL.md +248 -0
- package/assets/skills/monitoring-observability/SKILL.md +869 -0
- package/assets/skills/monitoring-observability/assets/templates/otel-config/collector-config.yaml +227 -0
- package/assets/skills/monitoring-observability/assets/templates/prometheus-alerts/kubernetes-alerts.yml +293 -0
- package/assets/skills/monitoring-observability/assets/templates/prometheus-alerts/webapp-alerts.yml +243 -0
- package/assets/skills/monitoring-observability/assets/templates/runbooks/incident-runbook-template.md +409 -0
- package/assets/skills/monitoring-observability/monitoring-observability.skill +0 -0
- package/assets/skills/monitoring-observability/references/alerting_best_practices.md +609 -0
- package/assets/skills/monitoring-observability/references/datadog_migration.md +649 -0
- package/assets/skills/monitoring-observability/references/dql_promql_translation.md +756 -0
- package/assets/skills/monitoring-observability/references/logging_guide.md +775 -0
- package/assets/skills/monitoring-observability/references/metrics_design.md +406 -0
- package/assets/skills/monitoring-observability/references/slo_sla_guide.md +652 -0
- package/assets/skills/monitoring-observability/references/tool_comparison.md +697 -0
- package/assets/skills/monitoring-observability/references/tracing_guide.md +663 -0
- package/assets/skills/monitoring-observability/scripts/alert_quality_checker.py +315 -0
- package/assets/skills/monitoring-observability/scripts/analyze_metrics.py +279 -0
- package/assets/skills/monitoring-observability/scripts/dashboard_generator.py +395 -0
- package/assets/skills/monitoring-observability/scripts/datadog_cost_analyzer.py +477 -0
- package/assets/skills/monitoring-observability/scripts/health_check_validator.py +297 -0
- package/assets/skills/monitoring-observability/scripts/log_analyzer.py +321 -0
- package/assets/skills/monitoring-observability/scripts/slo_calculator.py +365 -0
- package/assets/skills/neo4j-graph-rag/SKILL.md +258 -0
- package/assets/skills/pagerduty-ops/SKILL.md +380 -0
- package/assets/skills/playwright/API_REFERENCE.md +653 -0
- package/assets/skills/playwright/SKILL.md +453 -0
- package/assets/skills/playwright/lib/helpers.js +441 -0
- package/assets/skills/playwright/package.json +26 -0
- package/assets/skills/playwright/run.js +228 -0
- package/assets/skills/project-memory/README.md +687 -0
- package/assets/skills/project-memory/SKILL.md +298 -0
- package/assets/skills/project-memory/references/bugs_template.md +41 -0
- package/assets/skills/project-memory/references/decisions_template.md +92 -0
- package/assets/skills/project-memory/references/issues_template.md +76 -0
- package/assets/skills/project-memory/references/key_facts_template.md +158 -0
- package/assets/skills/recruit-workflow/SKILL.md +276 -0
- package/assets/skills/recruit-workflow/references/email-templates.md +347 -0
- package/assets/skills/recruit-workflow/references/workflow-stages.md +395 -0
- package/assets/skills/recruit-workflow/scripts/clay_client.py +188 -0
- package/assets/skills/recruit-workflow/scripts/lever_client.py +197 -0
- package/assets/skills/recruit-workflow/scripts/mailgun_client.py +245 -0
- package/assets/skills/recruit-workflow/scripts/minio_client.py +426 -0
- package/assets/skills/shakudo-microservice/SKILL.md +215 -0
- package/assets/skills/tmux/SKILL.md +631 -0
- package/assets/skills/tmux/references/direct-socket-control.md +108 -0
- package/assets/skills/tmux/references/session-lifecycle.md +503 -0
- package/assets/skills/tmux/references/session-registry.md +1484 -0
- package/assets/skills/tmux/tools/cleanup-sessions.sh +263 -0
- package/assets/skills/tmux/tools/create-session.sh +224 -0
- package/assets/skills/tmux/tools/find-sessions.sh +262 -0
- package/assets/skills/tmux/tools/kill-session.sh +308 -0
- package/assets/skills/tmux/tools/lib/registry.sh +437 -0
- package/assets/skills/tmux/tools/lib/time_utils.sh +54 -0
- package/assets/skills/tmux/tools/list-sessions.sh +255 -0
- package/assets/skills/tmux/tools/pane-health.sh +424 -0
- package/assets/skills/tmux/tools/safe-send.sh +503 -0
- package/assets/skills/tmux/tools/wait-for-text.sh +260 -0
- package/assets/skills/twilio-sms/SKILL.md +508 -0
- package/assets/skills/zellij/SKILL.md +274 -0
- package/assets/skills/zellij/references/actions.md +558 -0
- package/assets/skills/zellij/references/layouts.md +424 -0
- package/bin/cli.ts +46 -0
- package/package.json +43 -0
- package/src/alias.ts +108 -0
- package/src/backup.ts +51 -0
- package/src/config.ts +115 -0
- package/src/dependencies.ts +163 -0
- package/src/errors.ts +77 -0
- package/src/index.ts +207 -0
- package/src/prompts.ts +142 -0
- package/src/schemas.ts +21 -0
- package/src/skills.ts +45 -0
- package/src/speckit.ts +116 -0
- package/src/types.ts +106 -0
- package/src/utils.ts +110 -0
- package/src/vibe-git.ts +50 -0
- package/templates/.specify/memory/constitution.md +109 -0
- package/templates/.specify/scripts/bash/check-prerequisites.sh +262 -0
- package/templates/.specify/scripts/bash/common.sh +670 -0
- package/templates/.specify/scripts/bash/create-new-feature.sh +594 -0
- package/templates/.specify/scripts/bash/create-worktree-feature.sh +401 -0
- package/templates/.specify/scripts/bash/init-workspace.sh +433 -0
- package/templates/.specify/scripts/bash/list-spec-worktrees.sh +198 -0
- package/templates/.specify/scripts/bash/setup-plan.sh +105 -0
- package/templates/.specify/scripts/bash/test-workspace-rollup.sh +175 -0
- package/templates/.specify/scripts/bash/update-agent-context.sh +799 -0
- package/templates/.specify/templates/agent-file-template.md +28 -0
- package/templates/.specify/templates/checklist-template.md +40 -0
- package/templates/.specify/templates/commands/analyze.md +197 -0
- package/templates/.specify/templates/commands/checklist.md +306 -0
- package/templates/.specify/templates/commands/clarify.md +194 -0
- package/templates/.specify/templates/commands/constitution.md +97 -0
- package/templates/.specify/templates/commands/implement.md +149 -0
- package/templates/.specify/templates/commands/plan.md +123 -0
- package/templates/.specify/templates/commands/projects.md +48 -0
- package/templates/.specify/templates/commands/rollup.md +66 -0
- package/templates/.specify/templates/commands/specify.md +275 -0
- package/templates/.specify/templates/commands/specs.md +71 -0
- package/templates/.specify/templates/commands/tasks.md +151 -0
- package/templates/.specify/templates/commands/taskstoissues.md +35 -0
- package/templates/.specify/templates/commands/workspace.md +128 -0
- package/templates/.specify/templates/plan-template.md +104 -0
- package/templates/.specify/templates/spec-template.md +115 -0
- package/templates/.specify/templates/tasks-template.md +251 -0
- package/templates/.specify/templates/workspace.yaml +110 -0
- package/templates/.specify/workspace.yaml +95 -0
- package/templates/AGENTS.md +460 -0
- package/templates/oh-my-opencode.json +27 -0
- package/templates/opencode.json +383 -0
- package/templates/package.json +10 -0
- package/templates/project-memory/bugs.md +16 -0
- package/templates/project-memory/decisions.md +22 -0
- package/templates/project-memory/issues.md +15 -0
- package/templates/project-memory/key_facts.md +26 -0
|
@@ -0,0 +1,644 @@
|
|
|
1
|
+
# PRD: X-to-Book Multi-Agent System
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
|
|
5
|
+
A multi-agent system that monitors target X (Twitter) accounts daily, synthesizes their content, and generates structured books from accumulated insights. The system uses context engineering principles to handle high-volume social data while maintaining coherent long-form output.
|
|
6
|
+
|
|
7
|
+
## Problem Statement
|
|
8
|
+
|
|
9
|
+
Manual curation of insights from X accounts is time-consuming and inconsistent. Existing tools dump raw data without synthesis. We need a system that:
|
|
10
|
+
- Continuously monitors specified X accounts
|
|
11
|
+
- Extracts meaningful patterns and insights across time
|
|
12
|
+
- Produces structured, coherent daily book outputs
|
|
13
|
+
- Maintains temporal awareness of how narratives evolve
|
|
14
|
+
|
|
15
|
+
## Architecture
|
|
16
|
+
|
|
17
|
+
### Multi-Agent Pattern Selection: Supervisor/Orchestrator
|
|
18
|
+
|
|
19
|
+
Based on the context engineering patterns, we use a **supervisor architecture** because:
|
|
20
|
+
1. Book production has clear sequential phases (scrape, analyze, synthesize, write, edit)
|
|
21
|
+
2. Quality gates require central coordination
|
|
22
|
+
3. Human oversight points are well-defined
|
|
23
|
+
4. Context isolation per phase prevents attention saturation
|
|
24
|
+
|
|
25
|
+
```
|
|
26
|
+
User Config -> Orchestrator -> [Scraper, Analyzer, Synthesizer, Writer, Editor] -> Daily Book
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
### Agent Definitions
|
|
30
|
+
|
|
31
|
+
#### 1. Orchestrator Agent
|
|
32
|
+
**Purpose**: Central coordinator that manages workflow, maintains state, routes to specialists.
|
|
33
|
+
|
|
34
|
+
**Context Budget**: Reserved for task decomposition, quality gates, and synthesis coordination. Does not carry raw tweet data.
|
|
35
|
+
|
|
36
|
+
**Responsibilities**:
|
|
37
|
+
- Decompose daily book task into subtasks
|
|
38
|
+
- Route to appropriate specialist agents
|
|
39
|
+
- Implement checkpoint/resume for long-running operations
|
|
40
|
+
- Aggregate results without paraphrasing (avoid telephone game problem)
|
|
41
|
+
|
|
42
|
+
```python
|
|
43
|
+
class OrchestratorState(TypedDict):
|
|
44
|
+
target_accounts: List[str]
|
|
45
|
+
current_phase: str
|
|
46
|
+
phase_outputs: Dict[str, Any]
|
|
47
|
+
quality_scores: Dict[str, float]
|
|
48
|
+
book_outline: str
|
|
49
|
+
checkpoints: List[Dict]
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
#### 2. Scraper Agent
|
|
53
|
+
**Purpose**: Fetch and normalize content from target X accounts.
|
|
54
|
+
|
|
55
|
+
**Context Budget**: Minimal. Operates on one account at a time, outputs to file system.
|
|
56
|
+
|
|
57
|
+
**Tools**:
|
|
58
|
+
- `fetch_timeline(account_id, since_date, until_date)` - Retrieve tweets in date range
|
|
59
|
+
- `fetch_thread(tweet_id)` - Expand full thread context
|
|
60
|
+
- `fetch_engagement_metrics(tweet_ids)` - Get likes/retweets/replies
|
|
61
|
+
- `write_to_store(account_id, data)` - Persist to file system
|
|
62
|
+
|
|
63
|
+
**Output**: Structured JSON per account, written to file system (not passed through context).
|
|
64
|
+
|
|
65
|
+
#### 3. Analyzer Agent
|
|
66
|
+
**Purpose**: Extract patterns, themes, and insights from raw content.
|
|
67
|
+
|
|
68
|
+
**Context Budget**: Moderate. Processes one account's data at a time via file system reads.
|
|
69
|
+
|
|
70
|
+
**Responsibilities**:
|
|
71
|
+
- Topic extraction and clustering
|
|
72
|
+
- Sentiment analysis over time
|
|
73
|
+
- Key insight identification
|
|
74
|
+
- Thread narrative extraction
|
|
75
|
+
- Controversy/debate identification
|
|
76
|
+
|
|
77
|
+
**Output**: Structured analysis per account with:
|
|
78
|
+
- Top themes (ranked by frequency and engagement)
|
|
79
|
+
- Notable quotes (with context)
|
|
80
|
+
- Narrative arcs (multi-tweet threads)
|
|
81
|
+
- Temporal patterns (time-of-day, response patterns)
|
|
82
|
+
|
|
83
|
+
#### 4. Synthesizer Agent
|
|
84
|
+
**Purpose**: Cross-account pattern recognition and theme consolidation.
|
|
85
|
+
|
|
86
|
+
**Context Budget**: High. Receives summaries from all analyzed accounts.
|
|
87
|
+
|
|
88
|
+
**Responsibilities**:
|
|
89
|
+
- Identify cross-account themes
|
|
90
|
+
- Detect agreement/disagreement patterns
|
|
91
|
+
- Build narrative connections
|
|
92
|
+
- Generate book outline with chapter structure
|
|
93
|
+
|
|
94
|
+
**Output**: Book outline with:
|
|
95
|
+
- Chapter structure
|
|
96
|
+
- Theme assignments per chapter
|
|
97
|
+
- Source attribution map
|
|
98
|
+
- Suggested narrative flow
|
|
99
|
+
|
|
100
|
+
#### 5. Writer Agent
|
|
101
|
+
**Purpose**: Generate book content from outline and source material.
|
|
102
|
+
|
|
103
|
+
**Context Budget**: Per-chapter allocation. Works on one chapter at a time.
|
|
104
|
+
|
|
105
|
+
**Responsibilities**:
|
|
106
|
+
- Draft chapter content following outline
|
|
107
|
+
- Integrate quotes with proper attribution
|
|
108
|
+
- Maintain consistent voice and style
|
|
109
|
+
- Handle transitions between themes
|
|
110
|
+
|
|
111
|
+
**Output**: Draft chapters in markdown format.
|
|
112
|
+
|
|
113
|
+
#### 6. Editor Agent
|
|
114
|
+
**Purpose**: Quality assurance and refinement.
|
|
115
|
+
|
|
116
|
+
**Context Budget**: Per-chapter. Reviews one chapter at a time.
|
|
117
|
+
|
|
118
|
+
**Responsibilities**:
|
|
119
|
+
- Fact-check against source material
|
|
120
|
+
- Verify quote accuracy
|
|
121
|
+
- Check narrative coherence
|
|
122
|
+
- Flag potential issues for human review
|
|
123
|
+
|
|
124
|
+
**Output**: Edited chapters with revision notes.
|
|
125
|
+
|
|
126
|
+
---
|
|
127
|
+
|
|
128
|
+
## Memory System Design
|
|
129
|
+
|
|
130
|
+
### Architecture: Temporal Knowledge Graph
|
|
131
|
+
|
|
132
|
+
Based on the memory-systems skill, we need a **temporal knowledge graph** because:
|
|
133
|
+
- Facts about accounts change over time (opinions shift, topics evolve)
|
|
134
|
+
- We need time-travel queries ("What was @account's position on X in January?")
|
|
135
|
+
- Cross-account relationships require graph traversal
|
|
136
|
+
- Simple vector stores lose relationship structure
|
|
137
|
+
|
|
138
|
+
### Entity Types
|
|
139
|
+
|
|
140
|
+
```python
|
|
141
|
+
entities = {
|
|
142
|
+
"Account": {
|
|
143
|
+
"properties": ["handle", "display_name", "bio", "follower_count", "following_count"]
|
|
144
|
+
},
|
|
145
|
+
"Tweet": {
|
|
146
|
+
"properties": ["content", "timestamp", "engagement_score", "thread_id"]
|
|
147
|
+
},
|
|
148
|
+
"Theme": {
|
|
149
|
+
"properties": ["name", "description", "first_seen", "last_seen"]
|
|
150
|
+
},
|
|
151
|
+
"Book": {
|
|
152
|
+
"properties": ["date", "title", "chapter_count", "word_count"]
|
|
153
|
+
},
|
|
154
|
+
"Chapter": {
|
|
155
|
+
"properties": ["title", "theme", "word_count", "source_accounts"]
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
### Relationship Types
|
|
161
|
+
|
|
162
|
+
```python
|
|
163
|
+
relationships = {
|
|
164
|
+
"POSTED": {
|
|
165
|
+
"from": "Account",
|
|
166
|
+
"to": "Tweet",
|
|
167
|
+
"temporal": True
|
|
168
|
+
},
|
|
169
|
+
"DISCUSSES": {
|
|
170
|
+
"from": "Tweet",
|
|
171
|
+
"to": "Theme",
|
|
172
|
+
"temporal": True,
|
|
173
|
+
"properties": ["sentiment", "stance"]
|
|
174
|
+
},
|
|
175
|
+
"RESPONDS_TO": {
|
|
176
|
+
"from": "Tweet",
|
|
177
|
+
"to": "Tweet"
|
|
178
|
+
},
|
|
179
|
+
"AGREES_WITH": {
|
|
180
|
+
"from": "Account",
|
|
181
|
+
"to": "Account",
|
|
182
|
+
"temporal": True,
|
|
183
|
+
"properties": ["on_theme"]
|
|
184
|
+
},
|
|
185
|
+
"DISAGREES_WITH": {
|
|
186
|
+
"from": "Account",
|
|
187
|
+
"to": "Account",
|
|
188
|
+
"temporal": True,
|
|
189
|
+
"properties": ["on_theme"]
|
|
190
|
+
},
|
|
191
|
+
"CONTAINS": {
|
|
192
|
+
"from": "Book",
|
|
193
|
+
"to": "Chapter"
|
|
194
|
+
},
|
|
195
|
+
"SOURCES": {
|
|
196
|
+
"from": "Chapter",
|
|
197
|
+
"to": "Tweet"
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
### Memory Retrieval Patterns
|
|
203
|
+
|
|
204
|
+
```python
|
|
205
|
+
# What has @account said about AI in the last 30 days?
|
|
206
|
+
query_account_theme_temporal(account_id, theme="AI", days=30)
|
|
207
|
+
|
|
208
|
+
# Which accounts disagree on crypto?
|
|
209
|
+
query_disagreement_network(theme="crypto")
|
|
210
|
+
|
|
211
|
+
# What quotes should be in today's book about regulation?
|
|
212
|
+
query_quotable_content(theme="regulation", min_engagement=100)
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
---
|
|
216
|
+
|
|
217
|
+
## Context Optimization Strategy
|
|
218
|
+
|
|
219
|
+
### Challenge
|
|
220
|
+
|
|
221
|
+
X data is high-volume. A target account with 20 tweets/day across 10 accounts = 200 tweets/day. Each tweet with thread context averages 500 tokens. Daily raw context = 100k tokens before analysis.
|
|
222
|
+
|
|
223
|
+
### Optimization Techniques
|
|
224
|
+
|
|
225
|
+
#### 1. Observation Masking
|
|
226
|
+
Raw tweet data is processed by Scraper, written to file system, and never passed through Orchestrator context.
|
|
227
|
+
|
|
228
|
+
```python
|
|
229
|
+
# Instead of passing raw tweets through context
|
|
230
|
+
# Scraper writes to file system
|
|
231
|
+
scraper.write_to_store(account_id, raw_tweets)
|
|
232
|
+
|
|
233
|
+
# Analyzer reads from file system
|
|
234
|
+
raw_data = analyzer.read_from_store(account_id)
|
|
235
|
+
```
|
|
236
|
+
|
|
237
|
+
#### 2. Compaction Triggers
|
|
238
|
+
|
|
239
|
+
```python
|
|
240
|
+
COMPACTION_THRESHOLD = 0.7 # 70% context utilization
|
|
241
|
+
|
|
242
|
+
if context_utilization > COMPACTION_THRESHOLD:
|
|
243
|
+
# Summarize older phase outputs
|
|
244
|
+
phase_outputs = compact_phase_outputs(phase_outputs)
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
#### 3. Progressive Disclosure
|
|
248
|
+
|
|
249
|
+
Book outline loads first (lightweight). Full chapter content loads only when Writer is working on that chapter.
|
|
250
|
+
|
|
251
|
+
```python
|
|
252
|
+
# Level 1: Outline only
|
|
253
|
+
book_outline = {
|
|
254
|
+
"chapters": [
|
|
255
|
+
{"title": "Chapter 1", "themes": ["AI", "Regulation"], "word_count_target": 2000}
|
|
256
|
+
]
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
# Level 2: Full chapter context (only when writing)
|
|
260
|
+
chapter_context = load_chapter_context(chapter_id)
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
#### 4. KV-Cache Optimization
|
|
264
|
+
|
|
265
|
+
System prompt and tool definitions are stable across runs. Structure context for cache hits:
|
|
266
|
+
|
|
267
|
+
```python
|
|
268
|
+
context_order = [
|
|
269
|
+
system_prompt, # Stable, cacheable
|
|
270
|
+
tool_definitions, # Stable, cacheable
|
|
271
|
+
account_config, # Semi-stable
|
|
272
|
+
daily_outline, # Changes daily
|
|
273
|
+
current_task # Changes per call
|
|
274
|
+
]
|
|
275
|
+
```
|
|
276
|
+
|
|
277
|
+
---
|
|
278
|
+
|
|
279
|
+
## Tool Design
|
|
280
|
+
|
|
281
|
+
### Consolidation Principle Applied
|
|
282
|
+
|
|
283
|
+
Instead of multiple narrow tools, we implement comprehensive tools per domain:
|
|
284
|
+
|
|
285
|
+
#### X Data Tool (Consolidated)
|
|
286
|
+
|
|
287
|
+
```python
|
|
288
|
+
def x_data_tool(
|
|
289
|
+
action: Literal["fetch_timeline", "fetch_thread", "fetch_engagement", "search"],
|
|
290
|
+
account_id: Optional[str] = None,
|
|
291
|
+
tweet_id: Optional[str] = None,
|
|
292
|
+
query: Optional[str] = None,
|
|
293
|
+
since_date: Optional[str] = None,
|
|
294
|
+
until_date: Optional[str] = None,
|
|
295
|
+
format: Literal["concise", "detailed"] = "concise"
|
|
296
|
+
) -> Dict:
|
|
297
|
+
"""
|
|
298
|
+
Unified X data retrieval tool.
|
|
299
|
+
|
|
300
|
+
Use when:
|
|
301
|
+
- Fetching timeline for target account monitoring
|
|
302
|
+
- Expanding thread context for full conversation
|
|
303
|
+
- Getting engagement metrics for content prioritization
|
|
304
|
+
- Searching for specific topics across accounts
|
|
305
|
+
|
|
306
|
+
Actions:
|
|
307
|
+
- fetch_timeline: Get tweets from account in date range
|
|
308
|
+
- fetch_thread: Expand full thread from single tweet
|
|
309
|
+
- fetch_engagement: Get likes/retweets/replies
|
|
310
|
+
- search: Search across accounts for query
|
|
311
|
+
|
|
312
|
+
Returns:
|
|
313
|
+
- concise: tweet_id, content_preview, timestamp, engagement_score
|
|
314
|
+
- detailed: full content, thread context, all engagement metrics, reply preview
|
|
315
|
+
|
|
316
|
+
Errors:
|
|
317
|
+
- RATE_LIMITED: Wait {retry_after} seconds
|
|
318
|
+
- ACCOUNT_PRIVATE: Cannot access private account
|
|
319
|
+
- NOT_FOUND: Tweet/account does not exist
|
|
320
|
+
"""
|
|
321
|
+
```
|
|
322
|
+
|
|
323
|
+
#### Memory Tool (Consolidated)
|
|
324
|
+
|
|
325
|
+
```python
|
|
326
|
+
def memory_tool(
|
|
327
|
+
action: Literal["store", "query", "update_validity", "consolidate"],
|
|
328
|
+
entity_type: Optional[str] = None,
|
|
329
|
+
entity_id: Optional[str] = None,
|
|
330
|
+
relationship_type: Optional[str] = None,
|
|
331
|
+
query_params: Optional[Dict] = None,
|
|
332
|
+
as_of_date: Optional[str] = None
|
|
333
|
+
) -> Dict:
|
|
334
|
+
"""
|
|
335
|
+
Unified memory system tool.
|
|
336
|
+
|
|
337
|
+
Use when:
|
|
338
|
+
- Storing new facts discovered from X data
|
|
339
|
+
- Querying historical information about accounts/themes
|
|
340
|
+
- Updating validity periods when facts change
|
|
341
|
+
- Running consolidation to merge duplicate facts
|
|
342
|
+
|
|
343
|
+
Actions:
|
|
344
|
+
- store: Add new entity or relationship
|
|
345
|
+
- query: Retrieve entities/relationships matching params
|
|
346
|
+
- update_validity: Mark fact as expired with valid_until
|
|
347
|
+
- consolidate: Merge duplicates and cleanup
|
|
348
|
+
|
|
349
|
+
Returns entity/relationship data or query results.
|
|
350
|
+
"""
|
|
351
|
+
```
|
|
352
|
+
|
|
353
|
+
#### Writing Tool (Consolidated)
|
|
354
|
+
|
|
355
|
+
```python
|
|
356
|
+
def writing_tool(
|
|
357
|
+
action: Literal["draft", "edit", "format", "export"],
|
|
358
|
+
content: Optional[str] = None,
|
|
359
|
+
chapter_id: Optional[str] = None,
|
|
360
|
+
style_guide: Optional[str] = None,
|
|
361
|
+
output_format: Literal["markdown", "html", "pdf"] = "markdown"
|
|
362
|
+
) -> Dict:
|
|
363
|
+
"""
|
|
364
|
+
Unified book writing tool.
|
|
365
|
+
|
|
366
|
+
Use when:
|
|
367
|
+
- Drafting new chapter content
|
|
368
|
+
- Editing existing content for quality
|
|
369
|
+
- Formatting content for output
|
|
370
|
+
- Exporting final book
|
|
371
|
+
|
|
372
|
+
Actions:
|
|
373
|
+
- draft: Create initial chapter draft
|
|
374
|
+
- edit: Apply revisions to existing content
|
|
375
|
+
- format: Apply styling and formatting
|
|
376
|
+
- export: Generate final output file
|
|
377
|
+
"""
|
|
378
|
+
```
|
|
379
|
+
|
|
380
|
+
---
|
|
381
|
+
|
|
382
|
+
## Evaluation Framework
|
|
383
|
+
|
|
384
|
+
### Multi-Dimensional Rubric
|
|
385
|
+
|
|
386
|
+
Based on the evaluation skill, we define quality dimensions:
|
|
387
|
+
|
|
388
|
+
| Dimension | Weight | Excellent | Acceptable | Failed |
|
|
389
|
+
|-----------|--------|-----------|------------|--------|
|
|
390
|
+
| Source Accuracy | 30% | All quotes verified, proper attribution | Minor attribution errors | Fabricated quotes |
|
|
391
|
+
| Thematic Coherence | 25% | Clear narrative thread, logical flow | Some disconnected sections | No coherent narrative |
|
|
392
|
+
| Completeness | 20% | Covers all major themes from sources | Misses some themes | Major gaps |
|
|
393
|
+
| Insight Quality | 15% | Novel synthesis across sources | Restates obvious points | No synthesis |
|
|
394
|
+
| Readability | 10% | Engaging, well-structured prose | Adequate but dry | Unreadable |
|
|
395
|
+
|
|
396
|
+
### Automated Evaluation Pipeline
|
|
397
|
+
|
|
398
|
+
```python
|
|
399
|
+
def evaluate_daily_book(book: Book, source_data: Dict) -> EvaluationResult:
|
|
400
|
+
scores = {}
|
|
401
|
+
|
|
402
|
+
# Source accuracy: verify quotes against original tweets
|
|
403
|
+
scores["source_accuracy"] = verify_quotes(book.chapters, source_data)
|
|
404
|
+
|
|
405
|
+
# Thematic coherence: LLM-as-judge for narrative flow
|
|
406
|
+
scores["thematic_coherence"] = judge_coherence(book)
|
|
407
|
+
|
|
408
|
+
# Completeness: check theme coverage
|
|
409
|
+
scores["completeness"] = calculate_theme_coverage(book, source_data)
|
|
410
|
+
|
|
411
|
+
# Insight quality: LLM-as-judge for synthesis
|
|
412
|
+
scores["insight_quality"] = judge_insights(book, source_data)
|
|
413
|
+
|
|
414
|
+
# Readability: automated metrics + LLM judge
|
|
415
|
+
scores["readability"] = assess_readability(book)
|
|
416
|
+
|
|
417
|
+
overall = weighted_average(scores, DIMENSION_WEIGHTS)
|
|
418
|
+
|
|
419
|
+
return EvaluationResult(
|
|
420
|
+
passed=overall >= 0.7,
|
|
421
|
+
scores=scores,
|
|
422
|
+
overall=overall,
|
|
423
|
+
flagged_issues=identify_issues(scores)
|
|
424
|
+
)
|
|
425
|
+
```
|
|
426
|
+
|
|
427
|
+
### Human Review Triggers
|
|
428
|
+
|
|
429
|
+
- Overall score < 0.7
|
|
430
|
+
- Source accuracy < 0.8
|
|
431
|
+
- Any fabricated quote detected
|
|
432
|
+
- New account added (first book needs review)
|
|
433
|
+
- Controversial topic detected
|
|
434
|
+
|
|
435
|
+
---
|
|
436
|
+
|
|
437
|
+
## Data Flow
|
|
438
|
+
|
|
439
|
+
```
|
|
440
|
+
┌─────────────────────────────────────────────────────────────────────────────┐
|
|
441
|
+
│ DAILY PIPELINE │
|
|
442
|
+
└─────────────────────────────────────────────────────────────────────────────┘
|
|
443
|
+
│
|
|
444
|
+
▼
|
|
445
|
+
┌─────────────────────────────────────────────────────────────────────────────┐
|
|
446
|
+
│ 1. SCRAPE PHASE │
|
|
447
|
+
│ Scraper Agent → X API → File System (raw_data/{account}/{date}.json) │
|
|
448
|
+
│ Context: Minimal (tool calls only) │
|
|
449
|
+
│ Output: Raw tweet data persisted to file system │
|
|
450
|
+
└─────────────────────────────────────────────────────────────────────────────┘
|
|
451
|
+
│
|
|
452
|
+
▼
|
|
453
|
+
┌─────────────────────────────────────────────────────────────────────────────┐
|
|
454
|
+
│ 2. ANALYZE PHASE │
|
|
455
|
+
│ Analyzer Agent → File System → Memory Store │
|
|
456
|
+
│ Context: One account at a time │
|
|
457
|
+
│ Output: Structured analysis per account + Knowledge Graph updates │
|
|
458
|
+
└─────────────────────────────────────────────────────────────────────────────┘
|
|
459
|
+
│
|
|
460
|
+
▼
|
|
461
|
+
┌─────────────────────────────────────────────────────────────────────────────┐
|
|
462
|
+
│ 3. SYNTHESIZE PHASE │
|
|
463
|
+
│ Synthesizer Agent → Analysis Summaries → Book Outline │
|
|
464
|
+
│ Context: Summaries from all accounts (compacted) │
|
|
465
|
+
│ Output: Book outline with chapter structure │
|
|
466
|
+
└─────────────────────────────────────────────────────────────────────────────┘
|
|
467
|
+
│
|
|
468
|
+
▼
|
|
469
|
+
┌─────────────────────────────────────────────────────────────────────────────┐
|
|
470
|
+
│ 4. WRITE PHASE │
|
|
471
|
+
│ Writer Agent → Outline + Relevant Sources → Draft Chapters │
|
|
472
|
+
│ Context: One chapter at a time (progressive disclosure) │
|
|
473
|
+
│ Output: Draft markdown chapters │
|
|
474
|
+
└─────────────────────────────────────────────────────────────────────────────┘
|
|
475
|
+
│
|
|
476
|
+
▼
|
|
477
|
+
┌─────────────────────────────────────────────────────────────────────────────┐
|
|
478
|
+
│ 5. EDIT PHASE │
|
|
479
|
+
│ Editor Agent → Draft + Sources → Final Chapters │
|
|
480
|
+
│ Context: One chapter at a time │
|
|
481
|
+
│ Output: Edited chapters with revision notes │
|
|
482
|
+
└─────────────────────────────────────────────────────────────────────────────┘
|
|
483
|
+
│
|
|
484
|
+
▼
|
|
485
|
+
┌─────────────────────────────────────────────────────────────────────────────┐
|
|
486
|
+
│ 6. EVALUATE PHASE │
|
|
487
|
+
│ Evaluation Pipeline → Final Book → Quality Report │
|
|
488
|
+
│ Output: Pass/fail with scores, flagged issues │
|
|
489
|
+
└─────────────────────────────────────────────────────────────────────────────┘
|
|
490
|
+
│
|
|
491
|
+
▼
|
|
492
|
+
┌─────────────────────────────────────────────────────────────────────────────┐
|
|
493
|
+
│ 7. PUBLISH (if passed) or HUMAN REVIEW (if flagged) │
|
|
494
|
+
└─────────────────────────────────────────────────────────────────────────────┘
|
|
495
|
+
```
|
|
496
|
+
|
|
497
|
+
---
|
|
498
|
+
|
|
499
|
+
## Failure Modes and Mitigations
|
|
500
|
+
|
|
501
|
+
### Failure: Orchestrator Context Saturation
|
|
502
|
+
**Symptom**: Orchestrator accumulates phase outputs, degrading routing decisions.
|
|
503
|
+
**Mitigation**: Phase outputs stored in file system, Orchestrator receives only summaries. Implement checkpointing to persist state.
|
|
504
|
+
|
|
505
|
+
### Failure: X API Rate Limiting
|
|
506
|
+
**Symptom**: Scraper hits rate limits, incomplete data.
|
|
507
|
+
**Mitigation**:
|
|
508
|
+
- Implement circuit breaker with exponential backoff
|
|
509
|
+
- Checkpoint partial scrapes for resume
|
|
510
|
+
- Schedule scraping across time windows
|
|
511
|
+
|
|
512
|
+
### Failure: Quote Hallucination
|
|
513
|
+
**Symptom**: Writer generates quotes not in source material.
|
|
514
|
+
**Mitigation**:
|
|
515
|
+
- Strict source attribution in writing prompt
|
|
516
|
+
- Editor agent verifies all quotes against source
|
|
517
|
+
- Automated quote verification in evaluation
|
|
518
|
+
|
|
519
|
+
### Failure: Theme Drift
|
|
520
|
+
**Symptom**: Book themes diverge from actual source content.
|
|
521
|
+
**Mitigation**:
|
|
522
|
+
- Synthesizer receives grounded summaries only
|
|
523
|
+
- Writer tool includes source verification step
|
|
524
|
+
- Evaluation checks theme-source alignment
|
|
525
|
+
|
|
526
|
+
### Failure: Coordination Overhead
|
|
527
|
+
**Symptom**: Agent communication latency exceeds content value.
|
|
528
|
+
**Mitigation**:
|
|
529
|
+
- Batch phase outputs
|
|
530
|
+
- Use file system for inter-agent data (no context passing for large payloads)
|
|
531
|
+
- Parallelize where possible (Scraper can run per-account in parallel)
|
|
532
|
+
|
|
533
|
+
---
|
|
534
|
+
|
|
535
|
+
## Configuration
|
|
536
|
+
|
|
537
|
+
```yaml
|
|
538
|
+
# config.yaml
|
|
539
|
+
target_accounts:
|
|
540
|
+
- handle: "@account1"
|
|
541
|
+
priority: high
|
|
542
|
+
themes_of_interest: ["AI", "startups"]
|
|
543
|
+
- handle: "@account2"
|
|
544
|
+
priority: medium
|
|
545
|
+
themes_of_interest: ["regulation", "policy"]
|
|
546
|
+
|
|
547
|
+
schedule:
|
|
548
|
+
scrape_time: "06:00" # UTC
|
|
549
|
+
publish_time: "08:00"
|
|
550
|
+
timezone: "UTC"
|
|
551
|
+
|
|
552
|
+
book_settings:
|
|
553
|
+
target_word_count: 5000
|
|
554
|
+
min_chapters: 3
|
|
555
|
+
max_chapters: 7
|
|
556
|
+
style: "analytical" # analytical | narrative | summary
|
|
557
|
+
|
|
558
|
+
quality_thresholds:
|
|
559
|
+
min_overall_score: 0.7
|
|
560
|
+
min_source_accuracy: 0.8
|
|
561
|
+
require_human_review_below: 0.75
|
|
562
|
+
|
|
563
|
+
memory:
|
|
564
|
+
retention_days: 90
|
|
565
|
+
consolidation_frequency: "weekly"
|
|
566
|
+
|
|
567
|
+
context_limits:
|
|
568
|
+
orchestrator: 50000
|
|
569
|
+
scraper: 20000
|
|
570
|
+
analyzer: 80000
|
|
571
|
+
synthesizer: 100000
|
|
572
|
+
writer: 80000
|
|
573
|
+
editor: 60000
|
|
574
|
+
```
|
|
575
|
+
|
|
576
|
+
---
|
|
577
|
+
|
|
578
|
+
## Implementation Phases
|
|
579
|
+
|
|
580
|
+
### Phase 1: Core Pipeline (Week 1-2)
|
|
581
|
+
- Orchestrator with basic routing
|
|
582
|
+
- Scraper with X API integration
|
|
583
|
+
- File system storage
|
|
584
|
+
- Basic Writer producing markdown output
|
|
585
|
+
|
|
586
|
+
### Phase 2: Analysis Layer (Week 3-4)
|
|
587
|
+
- Analyzer agent with theme extraction
|
|
588
|
+
- Synthesizer with cross-account patterns
|
|
589
|
+
- Book outline generation
|
|
590
|
+
|
|
591
|
+
### Phase 3: Memory System (Week 5-6)
|
|
592
|
+
- Temporal knowledge graph implementation
|
|
593
|
+
- Entity and relationship storage
|
|
594
|
+
- Temporal queries for historical context
|
|
595
|
+
|
|
596
|
+
### Phase 4: Quality Layer (Week 7-8)
|
|
597
|
+
- Editor agent
|
|
598
|
+
- Evaluation pipeline
|
|
599
|
+
- Human review interface
|
|
600
|
+
|
|
601
|
+
### Phase 5: Production Hardening (Week 9-10)
|
|
602
|
+
- Checkpoint/resume
|
|
603
|
+
- Circuit breakers
|
|
604
|
+
- Monitoring and alerting
|
|
605
|
+
- Consolidation jobs
|
|
606
|
+
|
|
607
|
+
---
|
|
608
|
+
|
|
609
|
+
## Technical Stack (Recommended)
|
|
610
|
+
|
|
611
|
+
| Component | Technology | Rationale |
|
|
612
|
+
|-----------|------------|-----------|
|
|
613
|
+
| Agent Framework | LangGraph | Graph-based state machines with explicit nodes/edges |
|
|
614
|
+
| Knowledge Graph | Neo4j or Memgraph | Native temporal queries, relationship traversal |
|
|
615
|
+
| Vector Store | Weaviate or Pinecone | Hybrid search (semantic + metadata filtering) |
|
|
616
|
+
| X API | Official API or Scraping fallback | Rate limits require careful management |
|
|
617
|
+
| Storage | PostgreSQL + S3 | Structured data + blob storage for content |
|
|
618
|
+
| Orchestration | Temporal.io | Durable workflows with checkpoint/resume |
|
|
619
|
+
|
|
620
|
+
---
|
|
621
|
+
|
|
622
|
+
## Open Questions
|
|
623
|
+
|
|
624
|
+
1. **X API Access**: Official API vs scraping? Rate limits on official API are restrictive. Scraping has legal/TOS considerations.
|
|
625
|
+
|
|
626
|
+
2. **Book Format**: Pure prose vs mixed media (including original tweet embeds)?
|
|
627
|
+
|
|
628
|
+
3. **Attribution Model**: How prominent should account attribution be? Full quotes with handles vs paraphrased insights?
|
|
629
|
+
|
|
630
|
+
4. **Monetization**: If books are sold, what are the IP implications of synthesizing public tweets?
|
|
631
|
+
|
|
632
|
+
5. **Human-in-the-Loop**: How much editorial control? Full review of every book vs exception-based review?
|
|
633
|
+
|
|
634
|
+
---
|
|
635
|
+
|
|
636
|
+
## References
|
|
637
|
+
|
|
638
|
+
- [Agent Skills for Context Engineering](https://github.com/muratcankoylan/Agent-Skills-for-Context-Engineering) - Context engineering patterns
|
|
639
|
+
- Multi-agent patterns skill - Supervisor architecture selection
|
|
640
|
+
- Memory systems skill - Temporal knowledge graph design
|
|
641
|
+
- Context optimization skill - Observation masking and compaction strategies
|
|
642
|
+
- Tool design skill - Consolidation principle for tools
|
|
643
|
+
- Evaluation skill - Multi-dimensional rubrics
|
|
644
|
+
|