@bastani/atomic 0.5.11 → 0.5.12-1
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/adapt/SKILL.md +199 -0
- package/.agents/skills/advanced-evaluation/SKILL.md +402 -0
- package/.agents/skills/advanced-evaluation/references/bias-mitigation.md +288 -0
- package/.agents/skills/advanced-evaluation/references/evaluation-pipeline.md +43 -0
- package/.agents/skills/advanced-evaluation/references/implementation-patterns.md +315 -0
- package/.agents/skills/advanced-evaluation/references/metrics-guide.md +331 -0
- package/.agents/skills/advanced-evaluation/scripts/evaluation_example.py +392 -0
- package/.agents/skills/animate/SKILL.md +175 -0
- package/.agents/skills/arrange/SKILL.md +124 -0
- package/.agents/skills/audit/SKILL.md +148 -0
- package/.agents/skills/bdi-mental-states/SKILL.md +311 -0
- package/.agents/skills/bdi-mental-states/references/bdi-ontology-core.md +207 -0
- package/.agents/skills/bdi-mental-states/references/framework-integration.md +582 -0
- package/.agents/skills/bdi-mental-states/references/rdf-examples.md +315 -0
- package/.agents/skills/bdi-mental-states/references/sparql-competency.md +420 -0
- package/.agents/skills/bolder/SKILL.md +117 -0
- package/.agents/skills/bun/SKILL.md +199 -0
- package/.agents/skills/clarify/SKILL.md +183 -0
- package/.agents/skills/colorize/SKILL.md +143 -0
- package/.agents/skills/context-compression/SKILL.md +272 -0
- package/.agents/skills/context-compression/references/evaluation-framework.md +213 -0
- package/.agents/skills/context-compression/scripts/compression_evaluator.py +862 -0
- package/.agents/skills/context-compression/tests/test_compression_evaluator.py +56 -0
- package/.agents/skills/context-degradation/SKILL.md +206 -0
- package/.agents/skills/context-degradation/references/patterns.md +314 -0
- package/.agents/skills/context-degradation/scripts/degradation_detector.py +614 -0
- package/.agents/skills/context-fundamentals/SKILL.md +201 -0
- package/.agents/skills/context-fundamentals/references/context-components.md +283 -0
- package/.agents/skills/context-fundamentals/scripts/context_manager.py +533 -0
- package/.agents/skills/context-optimization/SKILL.md +195 -0
- package/.agents/skills/context-optimization/references/optimization_techniques.md +272 -0
- package/.agents/skills/context-optimization/scripts/compaction.py +562 -0
- package/.agents/skills/create-spec/SKILL.md +244 -0
- package/.agents/skills/critique/SKILL.md +225 -0
- package/.agents/skills/critique/reference/cognitive-load.md +106 -0
- package/.agents/skills/critique/reference/heuristics-scoring.md +234 -0
- package/.agents/skills/critique/reference/personas.md +178 -0
- package/.agents/skills/delight/SKILL.md +304 -0
- package/.agents/skills/distill/SKILL.md +122 -0
- package/.agents/skills/docx/LICENSE.txt +30 -0
- package/.agents/skills/docx/SKILL.md +590 -0
- package/.agents/skills/docx/scripts/__init__.py +1 -0
- package/.agents/skills/docx/scripts/accept_changes.py +135 -0
- package/.agents/skills/docx/scripts/comment.py +318 -0
- package/.agents/skills/docx/scripts/office/helpers/__init__.py +0 -0
- package/.agents/skills/docx/scripts/office/helpers/merge_runs.py +199 -0
- package/.agents/skills/docx/scripts/office/helpers/simplify_redlines.py +197 -0
- package/.agents/skills/docx/scripts/office/pack.py +159 -0
- package/.agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
- package/.agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
- package/.agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
- package/.agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
- package/.agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
- package/.agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
- package/.agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
- package/.agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
- package/.agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
- package/.agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
- package/.agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
- package/.agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
- package/.agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
- package/.agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
- package/.agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
- package/.agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
- package/.agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
- package/.agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
- package/.agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
- package/.agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
- package/.agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
- package/.agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
- package/.agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
- package/.agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
- package/.agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
- package/.agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
- package/.agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
- package/.agents/skills/docx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
- package/.agents/skills/docx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
- package/.agents/skills/docx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
- package/.agents/skills/docx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
- package/.agents/skills/docx/scripts/office/schemas/mce/mc.xsd +75 -0
- package/.agents/skills/docx/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
- package/.agents/skills/docx/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
- package/.agents/skills/docx/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
- package/.agents/skills/docx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
- package/.agents/skills/docx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
- package/.agents/skills/docx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
- package/.agents/skills/docx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
- package/.agents/skills/docx/scripts/office/soffice.py +183 -0
- package/.agents/skills/docx/scripts/office/unpack.py +132 -0
- package/.agents/skills/docx/scripts/office/validate.py +111 -0
- package/.agents/skills/docx/scripts/office/validators/__init__.py +15 -0
- package/.agents/skills/docx/scripts/office/validators/base.py +847 -0
- package/.agents/skills/docx/scripts/office/validators/docx.py +446 -0
- package/.agents/skills/docx/scripts/office/validators/pptx.py +275 -0
- package/.agents/skills/docx/scripts/office/validators/redlining.py +247 -0
- package/.agents/skills/docx/scripts/templates/comments.xml +3 -0
- package/.agents/skills/docx/scripts/templates/commentsExtended.xml +3 -0
- package/.agents/skills/docx/scripts/templates/commentsExtensible.xml +3 -0
- package/.agents/skills/docx/scripts/templates/commentsIds.xml +3 -0
- package/.agents/skills/docx/scripts/templates/people.xml +3 -0
- package/.agents/skills/evaluation/SKILL.md +251 -0
- package/.agents/skills/evaluation/references/metrics.md +339 -0
- package/.agents/skills/evaluation/scripts/evaluator.py +627 -0
- package/.agents/skills/explain-code/SKILL.md +230 -0
- package/.agents/skills/extract/SKILL.md +91 -0
- package/.agents/skills/filesystem-context/SKILL.md +287 -0
- package/.agents/skills/filesystem-context/references/implementation-patterns.md +549 -0
- package/.agents/skills/filesystem-context/scripts/filesystem_context.py +425 -0
- package/.agents/skills/find-skills/SKILL.md +142 -0
- package/.agents/skills/frontend-design/SKILL.md +147 -0
- package/.agents/skills/frontend-design/reference/color-and-contrast.md +132 -0
- package/.agents/skills/frontend-design/reference/interaction-design.md +195 -0
- package/.agents/skills/frontend-design/reference/motion-design.md +99 -0
- package/.agents/skills/frontend-design/reference/responsive-design.md +114 -0
- package/.agents/skills/frontend-design/reference/spatial-design.md +100 -0
- package/.agents/skills/frontend-design/reference/typography.md +133 -0
- package/.agents/skills/frontend-design/reference/ux-writing.md +107 -0
- package/.agents/skills/gh-commit/SKILL.md +243 -0
- package/.agents/skills/gh-create-pr/SKILL.md +93 -0
- package/.agents/skills/harden/SKILL.md +354 -0
- package/.agents/skills/hosted-agents/SKILL.md +260 -0
- package/.agents/skills/hosted-agents/references/infrastructure-patterns.md +700 -0
- package/.agents/skills/hosted-agents/scripts/sandbox_manager.py +590 -0
- package/.agents/skills/impeccable/SKILL.md +365 -0
- package/.agents/skills/impeccable/reference/color-and-contrast.md +105 -0
- package/.agents/skills/impeccable/reference/craft.md +70 -0
- package/.agents/skills/impeccable/reference/extract.md +70 -0
- package/.agents/skills/impeccable/reference/interaction-design.md +195 -0
- package/.agents/skills/impeccable/reference/motion-design.md +99 -0
- package/.agents/skills/impeccable/reference/responsive-design.md +114 -0
- package/.agents/skills/impeccable/reference/spatial-design.md +100 -0
- package/.agents/skills/impeccable/reference/typography.md +142 -0
- package/.agents/skills/impeccable/reference/ux-writing.md +107 -0
- package/.agents/skills/impeccable/scripts/cleanup-deprecated.mjs +214 -0
- package/.agents/skills/init/SKILL.md +138 -0
- package/.agents/skills/layout/SKILL.md +125 -0
- package/.agents/skills/liteparse/SKILL.md +222 -0
- package/.agents/skills/memory-systems/SKILL.md +219 -0
- package/.agents/skills/memory-systems/references/implementation.md +551 -0
- package/.agents/skills/memory-systems/scripts/memory_store.py +616 -0
- package/.agents/skills/multi-agent-patterns/SKILL.md +257 -0
- package/.agents/skills/multi-agent-patterns/references/frameworks.md +433 -0
- package/.agents/skills/multi-agent-patterns/scripts/coordination.py +613 -0
- package/.agents/skills/normalize/SKILL.md +70 -0
- package/.agents/skills/onboard/SKILL.md +245 -0
- package/.agents/skills/opentui/SKILL.md +201 -0
- package/.agents/skills/opentui/references/animation/REFERENCE.md +431 -0
- package/.agents/skills/opentui/references/components/REFERENCE.md +144 -0
- package/.agents/skills/opentui/references/components/code-diff.md +672 -0
- package/.agents/skills/opentui/references/components/containers.md +417 -0
- package/.agents/skills/opentui/references/components/inputs.md +531 -0
- package/.agents/skills/opentui/references/components/text-display.md +386 -0
- package/.agents/skills/opentui/references/core/REFERENCE.md +145 -0
- package/.agents/skills/opentui/references/core/api.md +543 -0
- package/.agents/skills/opentui/references/core/configuration.md +168 -0
- package/.agents/skills/opentui/references/core/gotchas.md +393 -0
- package/.agents/skills/opentui/references/core/patterns.md +449 -0
- package/.agents/skills/opentui/references/keyboard/REFERENCE.md +617 -0
- package/.agents/skills/opentui/references/layout/REFERENCE.md +337 -0
- package/.agents/skills/opentui/references/layout/patterns.md +444 -0
- package/.agents/skills/opentui/references/react/REFERENCE.md +174 -0
- package/.agents/skills/opentui/references/react/api.md +436 -0
- package/.agents/skills/opentui/references/react/configuration.md +302 -0
- package/.agents/skills/opentui/references/react/gotchas.md +443 -0
- package/.agents/skills/opentui/references/react/patterns.md +501 -0
- package/.agents/skills/opentui/references/solid/REFERENCE.md +201 -0
- package/.agents/skills/opentui/references/solid/api.md +564 -0
- package/.agents/skills/opentui/references/solid/configuration.md +316 -0
- package/.agents/skills/opentui/references/solid/gotchas.md +427 -0
- package/.agents/skills/opentui/references/solid/patterns.md +560 -0
- package/.agents/skills/opentui/references/testing/REFERENCE.md +614 -0
- package/.agents/skills/optimize/SKILL.md +266 -0
- package/.agents/skills/overdrive/SKILL.md +142 -0
- package/.agents/skills/pdf/LICENSE.txt +30 -0
- package/.agents/skills/pdf/SKILL.md +314 -0
- package/.agents/skills/pdf/forms.md +294 -0
- package/.agents/skills/pdf/reference.md +612 -0
- package/.agents/skills/pdf/scripts/check_bounding_boxes.py +65 -0
- package/.agents/skills/pdf/scripts/check_fillable_fields.py +11 -0
- package/.agents/skills/pdf/scripts/convert_pdf_to_images.py +33 -0
- package/.agents/skills/pdf/scripts/create_validation_image.py +37 -0
- package/.agents/skills/pdf/scripts/extract_form_field_info.py +122 -0
- package/.agents/skills/pdf/scripts/extract_form_structure.py +115 -0
- package/.agents/skills/pdf/scripts/fill_fillable_fields.py +98 -0
- package/.agents/skills/pdf/scripts/fill_pdf_form_with_annotations.py +107 -0
- package/.agents/skills/playwright-cli/SKILL.md +344 -0
- package/.agents/skills/playwright-cli/references/element-attributes.md +23 -0
- package/.agents/skills/playwright-cli/references/playwright-tests.md +39 -0
- package/.agents/skills/playwright-cli/references/request-mocking.md +87 -0
- package/.agents/skills/playwright-cli/references/running-code.md +231 -0
- package/.agents/skills/playwright-cli/references/session-management.md +169 -0
- package/.agents/skills/playwright-cli/references/storage-state.md +275 -0
- package/.agents/skills/playwright-cli/references/test-generation.md +88 -0
- package/.agents/skills/playwright-cli/references/tracing.md +139 -0
- package/.agents/skills/playwright-cli/references/video-recording.md +143 -0
- package/.agents/skills/polish/SKILL.md +224 -0
- package/.agents/skills/pptx/LICENSE.txt +30 -0
- package/.agents/skills/pptx/SKILL.md +232 -0
- package/.agents/skills/pptx/editing.md +205 -0
- package/.agents/skills/pptx/pptxgenjs.md +420 -0
- package/.agents/skills/pptx/scripts/__init__.py +0 -0
- package/.agents/skills/pptx/scripts/add_slide.py +195 -0
- package/.agents/skills/pptx/scripts/clean.py +286 -0
- package/.agents/skills/pptx/scripts/office/helpers/__init__.py +0 -0
- package/.agents/skills/pptx/scripts/office/helpers/merge_runs.py +199 -0
- package/.agents/skills/pptx/scripts/office/helpers/simplify_redlines.py +197 -0
- package/.agents/skills/pptx/scripts/office/pack.py +159 -0
- package/.agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
- package/.agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
- package/.agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
- package/.agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
- package/.agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
- package/.agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
- package/.agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
- package/.agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
- package/.agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
- package/.agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
- package/.agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
- package/.agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
- package/.agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
- package/.agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
- package/.agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
- package/.agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
- package/.agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
- package/.agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
- package/.agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
- package/.agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
- package/.agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
- package/.agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
- package/.agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
- package/.agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
- package/.agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
- package/.agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
- package/.agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
- package/.agents/skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
- package/.agents/skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
- package/.agents/skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
- package/.agents/skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
- package/.agents/skills/pptx/scripts/office/schemas/mce/mc.xsd +75 -0
- package/.agents/skills/pptx/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
- package/.agents/skills/pptx/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
- package/.agents/skills/pptx/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
- package/.agents/skills/pptx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
- package/.agents/skills/pptx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
- package/.agents/skills/pptx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
- package/.agents/skills/pptx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
- package/.agents/skills/pptx/scripts/office/soffice.py +183 -0
- package/.agents/skills/pptx/scripts/office/unpack.py +132 -0
- package/.agents/skills/pptx/scripts/office/validate.py +111 -0
- package/.agents/skills/pptx/scripts/office/validators/__init__.py +15 -0
- package/.agents/skills/pptx/scripts/office/validators/base.py +847 -0
- package/.agents/skills/pptx/scripts/office/validators/docx.py +446 -0
- package/.agents/skills/pptx/scripts/office/validators/pptx.py +275 -0
- package/.agents/skills/pptx/scripts/office/validators/redlining.py +247 -0
- package/.agents/skills/pptx/scripts/thumbnail.py +289 -0
- package/.agents/skills/project-development/SKILL.md +291 -0
- package/.agents/skills/project-development/references/case-studies.md +388 -0
- package/.agents/skills/project-development/references/pipeline-patterns.md +610 -0
- package/.agents/skills/project-development/scripts/pipeline_template.py +796 -0
- package/.agents/skills/prompt-engineer/SKILL.md +263 -0
- package/.agents/skills/prompt-engineer/references/advanced_patterns.md +271 -0
- package/.agents/skills/prompt-engineer/references/core_prompting.md +137 -0
- package/.agents/skills/prompt-engineer/references/quality_improvement.md +193 -0
- package/.agents/skills/quieter/SKILL.md +103 -0
- package/.agents/skills/research-codebase/SKILL.md +227 -0
- package/.agents/skills/shape/SKILL.md +96 -0
- package/.agents/skills/skill-creator/LICENSE.txt +202 -0
- package/.agents/skills/skill-creator/SKILL.md +485 -0
- package/.agents/skills/skill-creator/agents/analyzer.md +274 -0
- package/.agents/skills/skill-creator/agents/comparator.md +202 -0
- package/.agents/skills/skill-creator/agents/grader.md +223 -0
- package/.agents/skills/skill-creator/assets/eval_review.html +146 -0
- package/.agents/skills/skill-creator/eval-viewer/generate_review.py +471 -0
- package/.agents/skills/skill-creator/eval-viewer/viewer.html +1325 -0
- package/.agents/skills/skill-creator/references/schemas.md +430 -0
- package/.agents/skills/skill-creator/scripts/__init__.py +0 -0
- package/.agents/skills/skill-creator/scripts/aggregate_benchmark.py +401 -0
- package/.agents/skills/skill-creator/scripts/generate_report.py +326 -0
- package/.agents/skills/skill-creator/scripts/improve_description.py +247 -0
- package/.agents/skills/skill-creator/scripts/package_skill.py +136 -0
- package/.agents/skills/skill-creator/scripts/quick_validate.py +103 -0
- package/.agents/skills/skill-creator/scripts/run_eval.py +310 -0
- package/.agents/skills/skill-creator/scripts/run_loop.py +328 -0
- package/.agents/skills/skill-creator/scripts/utils.py +47 -0
- package/.agents/skills/sl-commit/SKILL.md +51 -0
- package/.agents/skills/sl-submit-diff/SKILL.md +55 -0
- package/.agents/skills/teach-impeccable/SKILL.md +71 -0
- package/.agents/skills/test-driven-development/SKILL.md +371 -0
- package/.agents/skills/test-driven-development/testing-anti-patterns.md +299 -0
- package/.agents/skills/tool-design/SKILL.md +271 -0
- package/.agents/skills/tool-design/references/architectural_reduction.md +210 -0
- package/.agents/skills/tool-design/references/best_practices.md +176 -0
- package/.agents/skills/tool-design/scripts/description_generator.py +528 -0
- package/.agents/skills/typescript-advanced-types/SKILL.md +719 -0
- package/.agents/skills/typescript-expert/SKILL.md +428 -0
- package/.agents/skills/typescript-expert/references/tsconfig-strict.json +92 -0
- package/.agents/skills/typescript-expert/references/typescript-cheatsheet.md +383 -0
- package/.agents/skills/typescript-expert/references/utility-types.ts +335 -0
- package/.agents/skills/typescript-expert/scripts/ts_diagnostic.py +203 -0
- package/.agents/skills/typescript-react-reviewer/SKILL.md +200 -0
- package/.agents/skills/typescript-react-reviewer/references/antipatterns.md +510 -0
- package/.agents/skills/typescript-react-reviewer/references/checklist.md +267 -0
- package/.agents/skills/typescript-react-reviewer/references/react19-patterns.md +305 -0
- package/.agents/skills/typeset/SKILL.md +116 -0
- package/.agents/skills/workflow-creator/SKILL.md +337 -0
- package/.agents/skills/workflow-creator/references/agent-sessions.md +789 -0
- package/.agents/skills/workflow-creator/references/computation-and-validation.md +224 -0
- package/.agents/skills/workflow-creator/references/control-flow.md +450 -0
- package/.agents/skills/workflow-creator/references/discovery-and-verification.md +156 -0
- package/.agents/skills/workflow-creator/references/failure-modes.md +732 -0
- package/.agents/skills/workflow-creator/references/getting-started.md +289 -0
- package/.agents/skills/workflow-creator/references/session-config.md +355 -0
- package/.agents/skills/workflow-creator/references/state-and-data-flow.md +374 -0
- package/.agents/skills/workflow-creator/references/user-input.md +206 -0
- package/.agents/skills/workflow-creator/references/workflow-inputs.md +274 -0
- package/.agents/skills/xlsx/LICENSE.txt +30 -0
- package/.agents/skills/xlsx/SKILL.md +292 -0
- package/.agents/skills/xlsx/scripts/office/helpers/__init__.py +0 -0
- package/.agents/skills/xlsx/scripts/office/helpers/merge_runs.py +199 -0
- package/.agents/skills/xlsx/scripts/office/helpers/simplify_redlines.py +197 -0
- package/.agents/skills/xlsx/scripts/office/pack.py +159 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
- package/.agents/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
- package/.agents/skills/xlsx/scripts/office/schemas/mce/mc.xsd +75 -0
- package/.agents/skills/xlsx/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
- package/.agents/skills/xlsx/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
- package/.agents/skills/xlsx/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
- package/.agents/skills/xlsx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
- package/.agents/skills/xlsx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
- package/.agents/skills/xlsx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
- package/.agents/skills/xlsx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
- package/.agents/skills/xlsx/scripts/office/soffice.py +183 -0
- package/.agents/skills/xlsx/scripts/office/unpack.py +132 -0
- package/.agents/skills/xlsx/scripts/office/validate.py +111 -0
- package/.agents/skills/xlsx/scripts/office/validators/__init__.py +15 -0
- package/.agents/skills/xlsx/scripts/office/validators/base.py +847 -0
- package/.agents/skills/xlsx/scripts/office/validators/docx.py +446 -0
- package/.agents/skills/xlsx/scripts/office/validators/pptx.py +275 -0
- package/.agents/skills/xlsx/scripts/office/validators/redlining.py +247 -0
- package/.agents/skills/xlsx/scripts/recalc.py +184 -0
- package/.claude/agents/reviewer.md +1 -0
- package/.github/agents/reviewer.md +1 -0
- package/.opencode/agents/reviewer.md +1 -0
- package/README.md +274 -169
- package/package.json +6 -7
- package/src/commands/cli/init/index.ts +2 -2
- package/src/commands/cli/init/scm.ts +7 -8
- package/src/commands/cli/workflow-command.test.ts +74 -0
- package/src/commands/cli/workflow.ts +7 -2
- package/src/scripts/bundle-configs.ts +128 -0
- package/src/sdk/components/compact-switcher.tsx +1 -1
- package/src/sdk/components/orchestrator-panel-store.ts +13 -0
- package/src/sdk/components/orchestrator-panel.tsx +10 -0
- package/src/sdk/components/statusline.tsx +13 -1
- package/src/sdk/components/workflow-picker-panel.tsx +407 -296
- package/src/sdk/providers/claude.ts +50 -0
- package/src/sdk/runtime/executor.ts +111 -32
- package/src/sdk/types.ts +7 -0
- package/src/sdk/workflows/builtin/ralph/claude/index.ts +132 -76
- package/src/sdk/workflows/builtin/ralph/copilot/index.ts +129 -71
- package/src/sdk/workflows/builtin/ralph/helpers/git.ts +184 -17
- package/src/sdk/workflows/builtin/ralph/helpers/prompts.ts +463 -79
- package/src/sdk/workflows/builtin/ralph/opencode/index.ts +124 -80
- package/src/services/system/auto-sync.ts +31 -51
- package/src/services/system/skills.ts +56 -60
- package/dist/lib/path-root-guard.d.ts +0 -4
- package/dist/lib/path-root-guard.d.ts.map +0 -1
- package/dist/sdk/components/color-utils.d.ts +0 -4
- package/dist/sdk/components/color-utils.d.ts.map +0 -1
- package/dist/sdk/components/compact-switcher.d.ts +0 -10
- package/dist/sdk/components/compact-switcher.d.ts.map +0 -1
- package/dist/sdk/components/connectors.d.ts +0 -15
- package/dist/sdk/components/connectors.d.ts.map +0 -1
- package/dist/sdk/components/connectors.test.d.ts +0 -2
- package/dist/sdk/components/connectors.test.d.ts.map +0 -1
- package/dist/sdk/components/edge.d.ts +0 -4
- package/dist/sdk/components/edge.d.ts.map +0 -1
- package/dist/sdk/components/error-boundary.d.ts +0 -23
- package/dist/sdk/components/error-boundary.d.ts.map +0 -1
- package/dist/sdk/components/graph-theme.d.ts +0 -17
- package/dist/sdk/components/graph-theme.d.ts.map +0 -1
- package/dist/sdk/components/header.d.ts +0 -3
- package/dist/sdk/components/header.d.ts.map +0 -1
- package/dist/sdk/components/hooks.d.ts +0 -15
- package/dist/sdk/components/hooks.d.ts.map +0 -1
- package/dist/sdk/components/layout.d.ts +0 -27
- package/dist/sdk/components/layout.d.ts.map +0 -1
- package/dist/sdk/components/layout.test.d.ts +0 -2
- package/dist/sdk/components/layout.test.d.ts.map +0 -1
- package/dist/sdk/components/node-card.d.ts +0 -10
- package/dist/sdk/components/node-card.d.ts.map +0 -1
- package/dist/sdk/components/orchestrator-panel-contexts.d.ts +0 -16
- package/dist/sdk/components/orchestrator-panel-contexts.d.ts.map +0 -1
- package/dist/sdk/components/orchestrator-panel-store.d.ts +0 -46
- package/dist/sdk/components/orchestrator-panel-store.d.ts.map +0 -1
- package/dist/sdk/components/orchestrator-panel-store.test.d.ts +0 -2
- package/dist/sdk/components/orchestrator-panel-store.test.d.ts.map +0 -1
- package/dist/sdk/components/orchestrator-panel-types.d.ts +0 -18
- package/dist/sdk/components/orchestrator-panel-types.d.ts.map +0 -1
- package/dist/sdk/components/orchestrator-panel.d.ts +0 -52
- package/dist/sdk/components/orchestrator-panel.d.ts.map +0 -1
- package/dist/sdk/components/session-graph-panel.d.ts +0 -7
- package/dist/sdk/components/session-graph-panel.d.ts.map +0 -1
- package/dist/sdk/components/status-helpers.d.ts +0 -6
- package/dist/sdk/components/status-helpers.d.ts.map +0 -1
- package/dist/sdk/components/statusline.d.ts +0 -7
- package/dist/sdk/components/statusline.d.ts.map +0 -1
- package/dist/sdk/components/workflow-picker-panel.d.ts +0 -123
- package/dist/sdk/components/workflow-picker-panel.d.ts.map +0 -1
- package/dist/sdk/define-workflow.d.ts +0 -78
- package/dist/sdk/define-workflow.d.ts.map +0 -1
- package/dist/sdk/define-workflow.test.d.ts +0 -2
- package/dist/sdk/define-workflow.test.d.ts.map +0 -1
- package/dist/sdk/errors.d.ts +0 -24
- package/dist/sdk/errors.d.ts.map +0 -1
- package/dist/sdk/errors.test.d.ts +0 -2
- package/dist/sdk/errors.test.d.ts.map +0 -1
- package/dist/sdk/index.d.ts +0 -13
- package/dist/sdk/index.d.ts.map +0 -1
- package/dist/sdk/providers/claude.d.ts +0 -170
- package/dist/sdk/providers/claude.d.ts.map +0 -1
- package/dist/sdk/providers/copilot.d.ts +0 -11
- package/dist/sdk/providers/copilot.d.ts.map +0 -1
- package/dist/sdk/providers/opencode.d.ts +0 -11
- package/dist/sdk/providers/opencode.d.ts.map +0 -1
- package/dist/sdk/runtime/discovery.d.ts +0 -86
- package/dist/sdk/runtime/discovery.d.ts.map +0 -1
- package/dist/sdk/runtime/executor-entry.d.ts +0 -11
- package/dist/sdk/runtime/executor-entry.d.ts.map +0 -1
- package/dist/sdk/runtime/executor.d.ts +0 -72
- package/dist/sdk/runtime/executor.d.ts.map +0 -1
- package/dist/sdk/runtime/executor.test.d.ts +0 -2
- package/dist/sdk/runtime/executor.test.d.ts.map +0 -1
- package/dist/sdk/runtime/graph-inference.d.ts +0 -35
- package/dist/sdk/runtime/graph-inference.d.ts.map +0 -1
- package/dist/sdk/runtime/loader.d.ts +0 -70
- package/dist/sdk/runtime/loader.d.ts.map +0 -1
- package/dist/sdk/runtime/panel.d.ts +0 -9
- package/dist/sdk/runtime/panel.d.ts.map +0 -1
- package/dist/sdk/runtime/theme.d.ts +0 -28
- package/dist/sdk/runtime/theme.d.ts.map +0 -1
- package/dist/sdk/runtime/tmux.d.ts +0 -297
- package/dist/sdk/runtime/tmux.d.ts.map +0 -1
- package/dist/sdk/types.d.ts +0 -295
- package/dist/sdk/types.d.ts.map +0 -1
- package/dist/sdk/workflows/builtin/deep-research-codebase/claude/index.d.ts +0 -62
- package/dist/sdk/workflows/builtin/deep-research-codebase/claude/index.d.ts.map +0 -1
- package/dist/sdk/workflows/builtin/deep-research-codebase/copilot/index.d.ts +0 -46
- package/dist/sdk/workflows/builtin/deep-research-codebase/copilot/index.d.ts.map +0 -1
- package/dist/sdk/workflows/builtin/deep-research-codebase/helpers/heuristic.d.ts +0 -26
- package/dist/sdk/workflows/builtin/deep-research-codebase/helpers/heuristic.d.ts.map +0 -1
- package/dist/sdk/workflows/builtin/deep-research-codebase/helpers/prompts.d.ts +0 -92
- package/dist/sdk/workflows/builtin/deep-research-codebase/helpers/prompts.d.ts.map +0 -1
- package/dist/sdk/workflows/builtin/deep-research-codebase/helpers/scout.d.ts +0 -57
- package/dist/sdk/workflows/builtin/deep-research-codebase/helpers/scout.d.ts.map +0 -1
- package/dist/sdk/workflows/builtin/deep-research-codebase/opencode/index.d.ts +0 -49
- package/dist/sdk/workflows/builtin/deep-research-codebase/opencode/index.d.ts.map +0 -1
- package/dist/sdk/workflows/builtin/ralph/claude/index.d.ts +0 -14
- package/dist/sdk/workflows/builtin/ralph/claude/index.d.ts.map +0 -1
- package/dist/sdk/workflows/builtin/ralph/copilot/index.d.ts +0 -14
- package/dist/sdk/workflows/builtin/ralph/copilot/index.d.ts.map +0 -1
- package/dist/sdk/workflows/builtin/ralph/helpers/git.d.ts +0 -17
- package/dist/sdk/workflows/builtin/ralph/helpers/git.d.ts.map +0 -1
- package/dist/sdk/workflows/builtin/ralph/helpers/prompts.d.ts +0 -119
- package/dist/sdk/workflows/builtin/ralph/helpers/prompts.d.ts.map +0 -1
- package/dist/sdk/workflows/builtin/ralph/helpers/review.d.ts +0 -20
- package/dist/sdk/workflows/builtin/ralph/helpers/review.d.ts.map +0 -1
- package/dist/sdk/workflows/builtin/ralph/opencode/index.d.ts +0 -14
- package/dist/sdk/workflows/builtin/ralph/opencode/index.d.ts.map +0 -1
- package/dist/sdk/workflows/index.d.ts +0 -24
- package/dist/sdk/workflows/index.d.ts.map +0 -1
- package/dist/services/config/definitions.d.ts +0 -85
- package/dist/services/config/definitions.d.ts.map +0 -1
- package/dist/services/system/copy.d.ts +0 -77
- package/dist/services/system/copy.d.ts.map +0 -1
- package/dist/services/system/detect.d.ts +0 -75
- package/dist/services/system/detect.d.ts.map +0 -1
- package/tsconfig.json +0 -33
|
@@ -5,7 +5,11 @@
|
|
|
5
5
|
* so users can see each iteration's progress in real time. The loop
|
|
6
6
|
* terminates when:
|
|
7
7
|
* - {@link MAX_LOOPS} iterations have completed, OR
|
|
8
|
-
* - Two
|
|
8
|
+
* - Two parallel reviewer passes both return zero findings.
|
|
9
|
+
*
|
|
10
|
+
* The reviewer stages use the OpenCode SDK's structured output
|
|
11
|
+
* (`format: { type: "json_schema" }`) to guarantee the review result
|
|
12
|
+
* matches the {@link ReviewResultSchema}.
|
|
9
13
|
*
|
|
10
14
|
* Run: atomic workflow -n ralph -a opencode "<your spec>"
|
|
11
15
|
*/
|
|
@@ -15,16 +19,20 @@ import { defineWorkflow } from "../../../index.ts";
|
|
|
15
19
|
import {
|
|
16
20
|
buildPlannerPrompt,
|
|
17
21
|
buildOrchestratorPrompt,
|
|
22
|
+
buildInfraDiscoveryPrompts,
|
|
18
23
|
buildReviewPrompt,
|
|
19
24
|
buildDebuggerReportPrompt,
|
|
20
|
-
parseReviewResult,
|
|
21
25
|
extractMarkdownBlock,
|
|
26
|
+
filterActionable,
|
|
27
|
+
mergeReviewResults,
|
|
28
|
+
REVIEW_RESULT_JSON_SCHEMA,
|
|
29
|
+
type ReviewResult,
|
|
30
|
+
type StructuredReviewResult,
|
|
22
31
|
} from "../helpers/prompts.ts";
|
|
23
32
|
import { hasActionableFindings } from "../helpers/review.ts";
|
|
24
|
-
import {
|
|
33
|
+
import { captureBranchChangeset } from "../helpers/git.ts";
|
|
25
34
|
|
|
26
35
|
const MAX_LOOPS = 10;
|
|
27
|
-
const CONSECUTIVE_CLEAN_THRESHOLD = 2;
|
|
28
36
|
|
|
29
37
|
/** Concatenate the text-typed parts of an OpenCode response. */
|
|
30
38
|
function extractResponseText(
|
|
@@ -36,24 +44,40 @@ function extractResponseText(
|
|
|
36
44
|
.join("\n");
|
|
37
45
|
}
|
|
38
46
|
|
|
47
|
+
/**
|
|
48
|
+
* Extract a {@link StructuredReviewResult} from an OpenCode prompt response.
|
|
49
|
+
* Prefers the SDK's structured_output field; falls back to text extraction.
|
|
50
|
+
*/
|
|
51
|
+
function extractReview(
|
|
52
|
+
data: { info?: Record<string, unknown>; parts: Array<{ type: string; [key: string]: unknown }> },
|
|
53
|
+
): StructuredReviewResult {
|
|
54
|
+
const raw = extractResponseText(data.parts);
|
|
55
|
+
|
|
56
|
+
// The SDK places validated structured output at data.info.structured_output
|
|
57
|
+
const structuredOutput = data.info?.structured_output;
|
|
58
|
+
if (structuredOutput && typeof structuredOutput === "object") {
|
|
59
|
+
return {
|
|
60
|
+
structured: filterActionable(structuredOutput as ReviewResult),
|
|
61
|
+
raw,
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
return { structured: null, raw };
|
|
66
|
+
}
|
|
67
|
+
|
|
39
68
|
export default defineWorkflow<"opencode">({
|
|
40
69
|
name: "ralph",
|
|
41
70
|
description:
|
|
42
71
|
"Plan → orchestrate → review → debug loop with bounded iteration",
|
|
43
72
|
})
|
|
44
73
|
.run(async (ctx) => {
|
|
45
|
-
// Free-form workflows receive their positional prompt under
|
|
46
|
-
// `inputs.prompt`; destructure once so every stage below can close
|
|
47
|
-
// over a bare `prompt` string without re-reaching into ctx.inputs.
|
|
48
74
|
const prompt = ctx.inputs.prompt ?? "";
|
|
49
|
-
let consecutiveClean = 0;
|
|
50
75
|
let debuggerReport = "";
|
|
51
76
|
|
|
52
77
|
for (let iteration = 1; iteration <= MAX_LOOPS; iteration++) {
|
|
53
78
|
// ── Plan ────────────────────────────────────────────────────────────
|
|
54
|
-
const plannerName = `planner-${iteration}`;
|
|
55
79
|
const planner = await ctx.stage(
|
|
56
|
-
{ name:
|
|
80
|
+
{ name: `planner-${iteration}` },
|
|
57
81
|
{},
|
|
58
82
|
{ title: `planner-${iteration}` },
|
|
59
83
|
async (s) => {
|
|
@@ -75,11 +99,9 @@ export default defineWorkflow<"opencode">({
|
|
|
75
99
|
},
|
|
76
100
|
);
|
|
77
101
|
|
|
78
|
-
|
|
79
102
|
// ── Orchestrate ─────────────────────────────────────────────────────
|
|
80
|
-
const orchName = `orchestrator-${iteration}`;
|
|
81
103
|
await ctx.stage(
|
|
82
|
-
{ name:
|
|
104
|
+
{ name: `orchestrator-${iteration}` },
|
|
83
105
|
{},
|
|
84
106
|
{ title: `orchestrator-${iteration}` },
|
|
85
107
|
async (s) => {
|
|
@@ -99,87 +121,109 @@ export default defineWorkflow<"opencode">({
|
|
|
99
121
|
},
|
|
100
122
|
);
|
|
101
123
|
|
|
124
|
+
// ── Infrastructure Discovery (three parallel sub-agent stages) ────
|
|
125
|
+
const changeset = await captureBranchChangeset();
|
|
126
|
+
const discoveryPrompts = buildInfraDiscoveryPrompts();
|
|
102
127
|
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
const review = await ctx.stage(
|
|
107
|
-
{ name: reviewerName },
|
|
108
|
-
{},
|
|
109
|
-
{ title: `reviewer-${iteration}` },
|
|
110
|
-
async (s) => {
|
|
111
|
-
const result = await s.client.session.prompt({
|
|
112
|
-
sessionID: s.session.id,
|
|
113
|
-
parts: [
|
|
114
|
-
{
|
|
115
|
-
type: "text",
|
|
116
|
-
text: buildReviewPrompt(prompt, {
|
|
117
|
-
gitStatus,
|
|
118
|
-
iteration,
|
|
119
|
-
}),
|
|
120
|
-
},
|
|
121
|
-
],
|
|
122
|
-
agent: "reviewer",
|
|
123
|
-
});
|
|
124
|
-
s.save(result.data!);
|
|
125
|
-
return extractResponseText(result.data!.parts);
|
|
126
|
-
},
|
|
127
|
-
);
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
let reviewRaw = review.result;
|
|
131
|
-
let parsed = parseReviewResult(reviewRaw);
|
|
132
|
-
|
|
133
|
-
if (!hasActionableFindings(parsed, reviewRaw)) {
|
|
134
|
-
consecutiveClean += 1;
|
|
135
|
-
if (consecutiveClean >= CONSECUTIVE_CLEAN_THRESHOLD) break;
|
|
136
|
-
|
|
137
|
-
// Confirmation pass — re-run reviewer only
|
|
138
|
-
gitStatus = await safeGitStatusS();
|
|
139
|
-
const confirmName = `reviewer-${iteration}-confirm`;
|
|
140
|
-
const confirm = await ctx.stage(
|
|
141
|
-
{ name: confirmName },
|
|
128
|
+
const [locatorResult, analyzerResult, patternResult] = await Promise.all([
|
|
129
|
+
ctx.stage(
|
|
130
|
+
{ name: `infra-locate-${iteration}`, headless: true },
|
|
142
131
|
{},
|
|
143
|
-
{ title: `
|
|
132
|
+
{ title: `infra-locate-${iteration}` },
|
|
144
133
|
async (s) => {
|
|
145
134
|
const result = await s.client.session.prompt({
|
|
146
135
|
sessionID: s.session.id,
|
|
147
|
-
parts: [
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
136
|
+
parts: [{ type: "text", text: discoveryPrompts.locator }],
|
|
137
|
+
agent: "codebase-locator",
|
|
138
|
+
});
|
|
139
|
+
s.save(result.data!);
|
|
140
|
+
return extractResponseText(result.data!.parts);
|
|
141
|
+
},
|
|
142
|
+
),
|
|
143
|
+
ctx.stage(
|
|
144
|
+
{ name: `infra-analyze-${iteration}`, headless: true },
|
|
145
|
+
{},
|
|
146
|
+
{ title: `infra-analyze-${iteration}` },
|
|
147
|
+
async (s) => {
|
|
148
|
+
const result = await s.client.session.prompt({
|
|
149
|
+
sessionID: s.session.id,
|
|
150
|
+
parts: [{ type: "text", text: discoveryPrompts.analyzer }],
|
|
151
|
+
agent: "codebase-analyzer",
|
|
152
|
+
});
|
|
153
|
+
s.save(result.data!);
|
|
154
|
+
return extractResponseText(result.data!.parts);
|
|
155
|
+
},
|
|
156
|
+
),
|
|
157
|
+
ctx.stage(
|
|
158
|
+
{ name: `infra-patterns-${iteration}`, headless: true },
|
|
159
|
+
{},
|
|
160
|
+
{ title: `infra-patterns-${iteration}` },
|
|
161
|
+
async (s) => {
|
|
162
|
+
const result = await s.client.session.prompt({
|
|
163
|
+
sessionID: s.session.id,
|
|
164
|
+
parts: [{ type: "text", text: discoveryPrompts.patternFinder }],
|
|
165
|
+
agent: "codebase-pattern-finder",
|
|
158
166
|
});
|
|
159
167
|
s.save(result.data!);
|
|
160
168
|
return extractResponseText(result.data!.parts);
|
|
161
169
|
},
|
|
170
|
+
),
|
|
171
|
+
]);
|
|
172
|
+
|
|
173
|
+
const discoveryContext = [
|
|
174
|
+
"### Infrastructure Files (codebase-locator)\n\n" + locatorResult.result,
|
|
175
|
+
"### Infrastructure Analysis (codebase-analyzer)\n\n" + analyzerResult.result,
|
|
176
|
+
"### Build & Test Patterns (codebase-pattern-finder)\n\n" + patternResult.result,
|
|
177
|
+
].join("\n\n---\n\n");
|
|
178
|
+
|
|
179
|
+
// ── Review (two parallel passes) ────────────────────────────────────
|
|
180
|
+
const reviewPrompt = buildReviewPrompt(prompt, {
|
|
181
|
+
changeset,
|
|
182
|
+
iteration,
|
|
183
|
+
discoveryContext,
|
|
184
|
+
});
|
|
185
|
+
|
|
186
|
+
const reviewStage = async (name: string) =>
|
|
187
|
+
ctx.stage(
|
|
188
|
+
{ name },
|
|
189
|
+
{},
|
|
190
|
+
{ title: name },
|
|
191
|
+
async (s) => {
|
|
192
|
+
const result = await s.client.session.prompt({
|
|
193
|
+
sessionID: s.session.id,
|
|
194
|
+
parts: [{ type: "text", text: reviewPrompt }],
|
|
195
|
+
agent: "reviewer",
|
|
196
|
+
format: {
|
|
197
|
+
type: "json_schema" as const,
|
|
198
|
+
schema: REVIEW_RESULT_JSON_SCHEMA,
|
|
199
|
+
},
|
|
200
|
+
});
|
|
201
|
+
s.save(result.data!);
|
|
202
|
+
return extractReview(
|
|
203
|
+
result.data! as {
|
|
204
|
+
info?: Record<string, unknown>;
|
|
205
|
+
parts: Array<{ type: string; [key: string]: unknown }>;
|
|
206
|
+
},
|
|
207
|
+
);
|
|
208
|
+
},
|
|
162
209
|
);
|
|
163
210
|
|
|
211
|
+
const [reviewA, reviewB] = await Promise.all([
|
|
212
|
+
reviewStage(`reviewer-${iteration}-a`),
|
|
213
|
+
reviewStage(`reviewer-${iteration}-b`),
|
|
214
|
+
]);
|
|
164
215
|
|
|
165
|
-
|
|
166
|
-
|
|
216
|
+
const merged = mergeReviewResults(reviewA.result, reviewB.result);
|
|
217
|
+
const parsed = merged.structured;
|
|
218
|
+
const reviewRaw = merged.raw;
|
|
167
219
|
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
if (consecutiveClean >= CONSECUTIVE_CLEAN_THRESHOLD) break;
|
|
171
|
-
} else {
|
|
172
|
-
consecutiveClean = 0;
|
|
173
|
-
}
|
|
174
|
-
} else {
|
|
175
|
-
consecutiveClean = 0;
|
|
176
|
-
}
|
|
220
|
+
// Both reviewers agree the code is clean → done
|
|
221
|
+
if (!hasActionableFindings(parsed, reviewRaw)) break;
|
|
177
222
|
|
|
178
|
-
// ── Debug (only if
|
|
179
|
-
if (
|
|
180
|
-
const debuggerName = `debugger-${iteration}`;
|
|
223
|
+
// ── Debug (only if another iteration is allowed) ────────────────────
|
|
224
|
+
if (iteration < MAX_LOOPS) {
|
|
181
225
|
const debugger_ = await ctx.stage(
|
|
182
|
-
{ name:
|
|
226
|
+
{ name: `debugger-${iteration}` },
|
|
183
227
|
{},
|
|
184
228
|
{ title: `debugger-${iteration}` },
|
|
185
229
|
async (s) => {
|
|
@@ -190,7 +234,7 @@ export default defineWorkflow<"opencode">({
|
|
|
190
234
|
type: "text",
|
|
191
235
|
text: buildDebuggerReportPrompt(parsed, reviewRaw, {
|
|
192
236
|
iteration,
|
|
193
|
-
|
|
237
|
+
changeset,
|
|
194
238
|
}),
|
|
195
239
|
},
|
|
196
240
|
],
|
|
@@ -11,37 +11,29 @@
|
|
|
11
11
|
* comparing the bundled `VERSION` constant against a marker file at
|
|
12
12
|
* `~/.atomic/.synced-version`. On a mismatch we run the same setup the
|
|
13
13
|
* production bootstrap installers (`install.sh` / `install.ps1`) provide,
|
|
14
|
-
*
|
|
14
|
+
* silently in the background:
|
|
15
15
|
*
|
|
16
16
|
* 1. tmux / psmux (terminal multiplexer for `chat` / `workflow`)
|
|
17
17
|
* 2. global agent configs (file copies — no network)
|
|
18
18
|
* 3. @playwright/cli (bun install -g)
|
|
19
19
|
* 4. @llamaindex/liteparse (bun install -g)
|
|
20
|
-
* 5. global skills (
|
|
20
|
+
* 5. global skills (file copies from bundled .agents/skills)
|
|
21
21
|
*
|
|
22
|
-
* All steps run
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
*
|
|
26
|
-
* Failures are collected and reported as a summary at the end, but never
|
|
27
|
-
* abort the run — partial setup matches the production installer's
|
|
28
|
-
* "best-effort" semantics. The marker is only written when every step
|
|
29
|
-
* succeeds; on partial failure the next launch re-runs all steps (they
|
|
30
|
-
* are idempotent, so re-running already-succeeded steps is harmless).
|
|
22
|
+
* All steps run silently. The only user-facing loading bar lives in the
|
|
23
|
+
* bootstrap installers (install.sh / install.ps1). Failures are swallowed;
|
|
24
|
+
* the marker is only written when every step succeeds, so the next launch
|
|
25
|
+
* retries (all steps are idempotent).
|
|
31
26
|
*/
|
|
32
27
|
|
|
33
28
|
import { join } from "node:path";
|
|
34
29
|
import { homedir } from "node:os";
|
|
35
30
|
import { VERSION } from "../../version.ts";
|
|
36
|
-
import { COLORS } from "../../theme/colors.ts";
|
|
37
31
|
import {
|
|
38
32
|
ensureTmuxInstalled,
|
|
39
33
|
upgradeGlobalToolPackages,
|
|
40
34
|
} from "../../lib/spawn.ts";
|
|
41
35
|
import { installGlobalAgents } from "./agents.ts";
|
|
42
36
|
import { installGlobalSkills } from "./skills.ts";
|
|
43
|
-
import { runSteps, printSummary } from "./install-ui.ts";
|
|
44
|
-
import { displayBlockBanner } from "../../theme/logo.ts";
|
|
45
37
|
|
|
46
38
|
/** Path to the version marker. Honors ATOMIC_SETTINGS_HOME for tests. */
|
|
47
39
|
function syncMarkerPath(): string {
|
|
@@ -70,10 +62,25 @@ export async function markSynced(): Promise<void> {
|
|
|
70
62
|
}
|
|
71
63
|
}
|
|
72
64
|
|
|
65
|
+
/**
|
|
66
|
+
* Run a step silently, returning whether it succeeded.
|
|
67
|
+
*/
|
|
68
|
+
async function silentStep(fn: () => Promise<unknown>): Promise<boolean> {
|
|
69
|
+
try {
|
|
70
|
+
await fn();
|
|
71
|
+
return true;
|
|
72
|
+
} catch {
|
|
73
|
+
return false;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
|
|
73
77
|
/**
|
|
74
78
|
* Sync tooling deps, bundled agents, and global skills if the marker
|
|
75
79
|
* doesn't match the bundled VERSION. No-op in dev checkouts and when the
|
|
76
80
|
* marker already matches the current version.
|
|
81
|
+
*
|
|
82
|
+
* Runs entirely silently — no spinner, no progress bar, no banner. The
|
|
83
|
+
* only loading UI lives in the bootstrap installers (install.sh / install.ps1).
|
|
77
84
|
*/
|
|
78
85
|
export async function autoSyncIfStale(): Promise<void> {
|
|
79
86
|
if (!isInstalledPackage()) return;
|
|
@@ -86,46 +93,19 @@ export async function autoSyncIfStale(): Promise<void> {
|
|
|
86
93
|
|
|
87
94
|
if (stored === VERSION) return;
|
|
88
95
|
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
)
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
//
|
|
98
|
-
// Each step's failure is caught inside `runSteps` (not thrown), so
|
|
99
|
-
// subsequent steps still run even if one fails — matches install.sh's
|
|
100
|
-
// best-effort contract.
|
|
101
|
-
const results = await runSteps([
|
|
102
|
-
[
|
|
103
|
-
{ label: "tmux / psmux", fn: () => ensureTmuxInstalled({ quiet: true }) },
|
|
104
|
-
{ label: "global agent configs", fn: installGlobalAgents },
|
|
105
|
-
{ label: "global tool packages", fn: upgradeGlobalToolPackages },
|
|
106
|
-
{ label: "global skills", fn: installGlobalSkills },
|
|
107
|
-
],
|
|
96
|
+
// All steps run in parallel and silently. Failures are swallowed so the
|
|
97
|
+
// CLI can proceed. The marker is only written when every step succeeds;
|
|
98
|
+
// on partial failure the next launch retries (all steps are idempotent).
|
|
99
|
+
const results = await Promise.all([
|
|
100
|
+
silentStep(() => ensureTmuxInstalled({ quiet: true })),
|
|
101
|
+
silentStep(installGlobalAgents),
|
|
102
|
+
silentStep(upgradeGlobalToolPackages),
|
|
103
|
+
silentStep(installGlobalSkills),
|
|
108
104
|
]);
|
|
109
105
|
|
|
110
|
-
const
|
|
106
|
+
const allOk = results.every(Boolean);
|
|
111
107
|
|
|
112
|
-
|
|
113
|
-
// the next launch will re-run all steps — they're idempotent, so
|
|
114
|
-
// re-running already-succeeded steps is cheap and harmless.
|
|
115
|
-
if (failures.length === 0) {
|
|
108
|
+
if (allOk) {
|
|
116
109
|
await markSynced();
|
|
117
110
|
}
|
|
118
|
-
|
|
119
|
-
displayBlockBanner();
|
|
120
|
-
printSummary(results);
|
|
121
|
-
|
|
122
|
-
if (failures.length > 0) {
|
|
123
|
-
console.log(
|
|
124
|
-
`\n ${COLORS.dim}Setup will retry on next launch. To retry now, re-run your command.${COLORS.reset}\n`,
|
|
125
|
-
);
|
|
126
|
-
} else {
|
|
127
|
-
console.log(
|
|
128
|
-
`\n ${COLORS.dim}Learn more at ${COLORS.reset}${COLORS.blue}https://deepwiki.com/flora131/atomic${COLORS.reset}\n`,
|
|
129
|
-
);
|
|
130
|
-
}
|
|
131
111
|
}
|
|
@@ -1,77 +1,73 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Global skills installation.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
4
|
+
* Copies bundled agent skills from the installed package into the
|
|
5
|
+
* provider-native global skill roots, mirroring the merge-copy approach
|
|
6
|
+
* used by {@link installGlobalAgents} for agent configs.
|
|
7
|
+
*
|
|
8
|
+
* Previously this ran `npx skills add <repo>` at runtime, which cloned
|
|
9
|
+
* the entire git repo on every version bump. Now the skills ship inside
|
|
10
|
+
* the npm package (`.agents/skills/`) and are copied locally — no network
|
|
11
|
+
* required, no `npx`/`bunx` dependency.
|
|
12
|
+
*
|
|
13
|
+
* SCM-variant skills (gh-commit, gh-create-pr, sl-commit, sl-submit-diff)
|
|
14
|
+
* are excluded from the global install; `atomic init` installs them
|
|
15
|
+
* per-project based on the user's selected SCM + active agent.
|
|
7
16
|
*/
|
|
8
17
|
|
|
18
|
+
import { join } from "node:path";
|
|
19
|
+
import { homedir } from "node:os";
|
|
9
20
|
import { ALL_SCM_SKILLS } from "../config/index.ts";
|
|
21
|
+
import { copyDir, pathExists } from "./copy.ts";
|
|
10
22
|
|
|
11
|
-
|
|
12
|
-
|
|
23
|
+
/**
|
|
24
|
+
* Locate the package root by walking up from this module. Both in installed
|
|
25
|
+
* (`<pkg>/src/services/system/skills.ts`) and dev checkout layouts the
|
|
26
|
+
* package root is three directories up.
|
|
27
|
+
*/
|
|
28
|
+
function packageRoot(): string {
|
|
29
|
+
return join(import.meta.dir, "..", "..", "..");
|
|
30
|
+
}
|
|
13
31
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
details: string;
|
|
32
|
+
/** Honors ATOMIC_SETTINGS_HOME so tests can point at a temp dir. */
|
|
33
|
+
function homeRoot(): string {
|
|
34
|
+
return process.env.ATOMIC_SETTINGS_HOME ?? homedir();
|
|
18
35
|
}
|
|
19
36
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
37
|
+
/**
|
|
38
|
+
* Global skill directories keyed by provider.
|
|
39
|
+
*
|
|
40
|
+
* From CLAUDE.md:
|
|
41
|
+
* - `~/.agents/skills` for OpenCode and Copilot CLI
|
|
42
|
+
* - `~/.claude/skills` for Claude Code
|
|
43
|
+
*/
|
|
44
|
+
const SKILL_DEST_DIRS = [
|
|
45
|
+
".agents/skills",
|
|
46
|
+
".claude/skills",
|
|
47
|
+
] as const;
|
|
27
48
|
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
const isBunx = runner.endsWith("bunx");
|
|
31
|
-
const cmd = isBunx
|
|
32
|
-
? [runner, "skills", ...args]
|
|
33
|
-
: [runner, "--yes", "skills", ...args];
|
|
34
|
-
const proc = Bun.spawn(cmd, {
|
|
35
|
-
stdout: "pipe",
|
|
36
|
-
stderr: "pipe",
|
|
37
|
-
});
|
|
38
|
-
const [stderr, stdout, exitCode] = await Promise.all([
|
|
39
|
-
new Response(proc.stderr).text(),
|
|
40
|
-
new Response(proc.stdout).text(),
|
|
41
|
-
proc.exited,
|
|
42
|
-
]);
|
|
43
|
-
const details = (stderr.trim() || stdout.trim()).slice(-800);
|
|
44
|
-
return { ok: exitCode === 0, details };
|
|
45
|
-
}
|
|
49
|
+
/** The set of SCM skill names to exclude from global installation. */
|
|
50
|
+
const SCM_SKILL_SET = new Set<string>(ALL_SCM_SKILLS);
|
|
46
51
|
|
|
52
|
+
/**
|
|
53
|
+
* Copy bundled skills to the global skill directories, excluding
|
|
54
|
+
* SCM-variant skills that are installed per-project by `atomic init`.
|
|
55
|
+
*/
|
|
47
56
|
export async function installGlobalSkills(): Promise<void> {
|
|
48
|
-
const
|
|
57
|
+
const src = join(packageRoot(), ".agents", "skills");
|
|
49
58
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
SKILLS_REPO,
|
|
53
|
-
"--skill",
|
|
54
|
-
"*",
|
|
55
|
-
"-g",
|
|
56
|
-
...agentFlags,
|
|
57
|
-
"-y",
|
|
58
|
-
]);
|
|
59
|
-
if (!addResult.ok) {
|
|
60
|
-
throw new Error(`npx skills add failed: ${addResult.details}`);
|
|
59
|
+
if (!(await pathExists(src))) {
|
|
60
|
+
throw new Error(`Bundled skills missing at ${src}`);
|
|
61
61
|
}
|
|
62
62
|
|
|
63
|
-
const
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
]
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
]);
|
|
74
|
-
if (!removeResult.ok) {
|
|
75
|
-
throw new Error(`npx skills remove failed: ${removeResult.details}`);
|
|
76
|
-
}
|
|
63
|
+
const home = homeRoot();
|
|
64
|
+
|
|
65
|
+
// Build the exclusion list from SCM skill names
|
|
66
|
+
const exclude = [...SCM_SKILL_SET];
|
|
67
|
+
|
|
68
|
+
await Promise.all(
|
|
69
|
+
SKILL_DEST_DIRS.map((rel) =>
|
|
70
|
+
copyDir(src, join(home, rel), { exclude }),
|
|
71
|
+
),
|
|
72
|
+
);
|
|
77
73
|
}
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export declare function isPathWithinRoot(rootPath: string, candidatePath: string): boolean;
|
|
2
|
-
export declare function assertPathWithinRoot(rootPath: string, candidatePath: string, label: string): void;
|
|
3
|
-
export declare function assertRealPathWithinRoot(rootPath: string, candidatePath: string, label: string): Promise<string>;
|
|
4
|
-
//# sourceMappingURL=path-root-guard.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"path-root-guard.d.ts","sourceRoot":"","sources":["../../src/lib/path-root-guard.ts"],"names":[],"mappings":"AAQA,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAEjF;AAED,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,EACrB,KAAK,EAAE,MAAM,GACZ,IAAI,CAIN;AAED,wBAAsB,wBAAwB,CAC5C,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,EACrB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,MAAM,CAAC,CAWjB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"color-utils.d.ts","sourceRoot":"","sources":["../../../src/sdk/components/color-utils.ts"],"names":[],"mappings":"AAEA,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAG9D;AAED,wBAAgB,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAEhE;AAED,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAQjE"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
/** @jsxImportSource @opentui/react */
|
|
2
|
-
/**
|
|
3
|
-
* CompactSwitcher — a lightweight popup that lists all agents for quick
|
|
4
|
-
* direct-jump navigation. Opened with "/" from any view mode.
|
|
5
|
-
*/
|
|
6
|
-
export interface CompactSwitcherProps {
|
|
7
|
-
selectedIndex: number;
|
|
8
|
-
}
|
|
9
|
-
export declare function CompactSwitcher({ selectedIndex }: CompactSwitcherProps): import("react").ReactNode;
|
|
10
|
-
//# sourceMappingURL=compact-switcher.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"compact-switcher.d.ts","sourceRoot":"","sources":["../../../src/sdk/components/compact-switcher.tsx"],"names":[],"mappings":"AAAA,sCAAsC;AACtC;;;GAGG;AAMH,MAAM,WAAW,oBAAoB;IACnC,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,eAAe,CAAC,EAAE,aAAa,EAAE,EAAE,oBAAoB,6BA0DtE"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import type { GraphTheme } from "./graph-theme.ts";
|
|
2
|
-
import { type LayoutNode } from "./layout.ts";
|
|
3
|
-
export interface ConnectorResult {
|
|
4
|
-
text: string;
|
|
5
|
-
col: number;
|
|
6
|
-
row: number;
|
|
7
|
-
width: number;
|
|
8
|
-
height: number;
|
|
9
|
-
color: string;
|
|
10
|
-
}
|
|
11
|
-
/** Fan-out connector: one parent branching down to one or more tree children. */
|
|
12
|
-
export declare function buildConnector(parent: LayoutNode, rowH: Record<number, number>, theme: GraphTheme): ConnectorResult | null;
|
|
13
|
-
/** Fan-in connector: multiple parents converging down to a single merge child. */
|
|
14
|
-
export declare function buildMergeConnector(child: LayoutNode, rowH: Record<number, number>, allNodes: Record<string, LayoutNode>, theme: GraphTheme): ConnectorResult | null;
|
|
15
|
-
//# sourceMappingURL=connectors.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"connectors.d.ts","sourceRoot":"","sources":["../../../src/sdk/components/connectors.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAkB,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9D,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED,iFAAiF;AACjF,wBAAgB,cAAc,CAC5B,MAAM,EAAE,UAAU,EAClB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC5B,KAAK,EAAE,UAAU,GAChB,eAAe,GAAG,IAAI,CAqExB;AAED,kFAAkF;AAClF,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,UAAU,EACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC5B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,EACpC,KAAK,EAAE,UAAU,GAChB,eAAe,GAAG,IAAI,CA2DxB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"connectors.test.d.ts","sourceRoot":"","sources":["../../../src/sdk/components/connectors.test.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"edge.d.ts","sourceRoot":"","sources":["../../../src/sdk/components/edge.tsx"],"names":[],"mappings":"AAAA,sCAAsC;AAEtC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEvD,wBAAgB,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,eAAe,6BAMxF"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
/** @jsxImportSource @opentui/react */
|
|
2
|
-
/**
|
|
3
|
-
* React Error Boundary for the orchestrator panel.
|
|
4
|
-
*
|
|
5
|
-
* Catches render-time errors in the component tree and displays a
|
|
6
|
-
* static fallback so the rest of the TUI doesn't crash.
|
|
7
|
-
*/
|
|
8
|
-
import { Component, type ReactNode, type ErrorInfo } from "react";
|
|
9
|
-
interface ErrorBoundaryProps {
|
|
10
|
-
fallback: (error: Error) => ReactNode;
|
|
11
|
-
children: ReactNode;
|
|
12
|
-
}
|
|
13
|
-
interface ErrorBoundaryState {
|
|
14
|
-
error: Error | null;
|
|
15
|
-
}
|
|
16
|
-
export declare class ErrorBoundary extends Component<ErrorBoundaryProps, ErrorBoundaryState> {
|
|
17
|
-
state: ErrorBoundaryState;
|
|
18
|
-
static getDerivedStateFromError(error: Error): ErrorBoundaryState;
|
|
19
|
-
componentDidCatch(error: Error, info: ErrorInfo): void;
|
|
20
|
-
render(): ReactNode;
|
|
21
|
-
}
|
|
22
|
-
export {};
|
|
23
|
-
//# sourceMappingURL=error-boundary.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"error-boundary.d.ts","sourceRoot":"","sources":["../../../src/sdk/components/error-boundary.tsx"],"names":[],"mappings":"AAAA,sCAAsC;AACtC;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAElE,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,SAAS,CAAC;IACtC,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,UAAU,kBAAkB;IAC1B,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CACrB;AAED,qBAAa,aAAc,SAAQ,SAAS,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IACzE,KAAK,EAAE,kBAAkB,CAAmB;IAErD,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,KAAK,GAAG,kBAAkB;IAIxD,iBAAiB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,GAAG,IAAI;IAKtD,MAAM,IAAI,SAAS;CAM7B"}
|