@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
package/README.md
CHANGED
|
@@ -57,27 +57,56 @@ Each of these is a `.ts` file using Atomic's [Workflow SDK](#workflow-sdk--build
|
|
|
57
57
|
|
|
58
58
|
## Table of Contents
|
|
59
59
|
|
|
60
|
-
- [
|
|
61
|
-
- [
|
|
62
|
-
- [
|
|
63
|
-
- [
|
|
64
|
-
- [
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
- [
|
|
72
|
-
- [
|
|
73
|
-
- [
|
|
74
|
-
- [
|
|
75
|
-
- [
|
|
76
|
-
- [
|
|
77
|
-
- [
|
|
78
|
-
- [
|
|
79
|
-
- [
|
|
80
|
-
- [
|
|
60
|
+
- [Atomic](#atomic)
|
|
61
|
+
- [Why Atomic](#why-atomic)
|
|
62
|
+
- [What You Can Build](#what-you-can-build)
|
|
63
|
+
- [Table of Contents](#table-of-contents)
|
|
64
|
+
- [Quick Start](#quick-start)
|
|
65
|
+
- [Prerequisites](#prerequisites)
|
|
66
|
+
- [1. Install](#1-install)
|
|
67
|
+
- [2. Initialize Your Project](#2-initialize-your-project)
|
|
68
|
+
- [3. Generate Context Files](#3-generate-context-files)
|
|
69
|
+
- [4. Managing Sessions](#4-managing-sessions)
|
|
70
|
+
- [5. Build a Workflow](#5-build-a-workflow)
|
|
71
|
+
- [Core Features](#core-features)
|
|
72
|
+
- [Multi-Agent Support](#multi-agent-support)
|
|
73
|
+
- [Workflow SDK — Build Your Own Deterministic Harness](#workflow-sdk--build-your-own-deterministic-harness)
|
|
74
|
+
- [Builder API](#builder-api)
|
|
75
|
+
- [WorkflowContext (`ctx`) — top-level orchestrator](#workflowcontext-ctx--top-level-orchestrator)
|
|
76
|
+
- [SessionContext (`s`) — inside each session callback](#sessioncontext-s--inside-each-session-callback)
|
|
77
|
+
- [Session Options (`SessionRunOptions`)](#session-options-sessionrunoptions)
|
|
78
|
+
- [Saving Transcripts](#saving-transcripts)
|
|
79
|
+
- [Per-Agent Session APIs](#per-agent-session-apis)
|
|
80
|
+
- [Key Rules](#key-rules)
|
|
81
|
+
- [Deep Codebase Research](#deep-codebase-research)
|
|
82
|
+
- [Autonomous Execution (Ralph)](#autonomous-execution-ralph)
|
|
83
|
+
- [Containerized Execution](#containerized-execution)
|
|
84
|
+
- [Specialized Sub-Agents](#specialized-sub-agents)
|
|
85
|
+
- [Built-in Skills](#built-in-skills)
|
|
86
|
+
- [Workflow Orchestrator Panel](#workflow-orchestrator-panel)
|
|
87
|
+
- [Commands Reference](#commands-reference)
|
|
88
|
+
- [CLI Commands](#cli-commands)
|
|
89
|
+
- [Global Flags](#global-flags)
|
|
90
|
+
- [`atomic init` Flags](#atomic-init-flags)
|
|
91
|
+
- [`atomic session` Subcommands](#atomic-session-subcommands)
|
|
92
|
+
- [`atomic chat` Flags](#atomic-chat-flags)
|
|
93
|
+
- [`atomic workflow` Flags](#atomic-workflow-flags)
|
|
94
|
+
- [`atomic completions` — Shell Completions](#atomic-completions--shell-completions)
|
|
95
|
+
- [Atomic-Provided Skills (invokable from any agent chat)](#atomic-provided-skills-invokable-from-any-agent-chat)
|
|
96
|
+
- [Configuration](#configuration)
|
|
97
|
+
- [`.atomic/settings.json`](#atomicsettingsjson)
|
|
98
|
+
- [Agent-Specific Files](#agent-specific-files)
|
|
99
|
+
- [Installation Options](#installation-options)
|
|
100
|
+
- [Bun (recommended)](#bun-recommended)
|
|
101
|
+
- [Devcontainer (recommended for autonomous agents)](#devcontainer-recommended-for-autonomous-agents)
|
|
102
|
+
- [Updating \& Uninstalling](#updating--uninstalling)
|
|
103
|
+
- [Update](#update)
|
|
104
|
+
- [Uninstall](#uninstall)
|
|
105
|
+
- [Troubleshooting](#troubleshooting)
|
|
106
|
+
- [FAQ](#faq)
|
|
107
|
+
- [Contributing](#contributing)
|
|
108
|
+
- [License](#license)
|
|
109
|
+
- [Credits](#credits)
|
|
81
110
|
|
|
82
111
|
---
|
|
83
112
|
|
|
@@ -150,6 +179,15 @@ irm https://raw.githubusercontent.com/flora131/atomic/main/install.ps1 | iex
|
|
|
150
179
|
```
|
|
151
180
|
|
|
152
181
|
|
|
182
|
+
> [!IMPORTANT]
|
|
183
|
+
> **Migrating from the old standalone binary?** The old version of Atomic was a standalone binary. It is now distributed as an npm package. To migrate:
|
|
184
|
+
>
|
|
185
|
+
> 1. Uninstall the old binary: `atomic uninstall`
|
|
186
|
+
> 2. Uninstall the old workflows package: `bun uninstall -g @bastani/atomic-workflows`
|
|
187
|
+
> 3. Delete the old config directory: `rm -rf ~/.atomic`
|
|
188
|
+
> 4. Remove legacy skill directories: `rm -rf ~/.copilot/skills ~/.opencode/skills`
|
|
189
|
+
> 5. Re-install using any of the install options above
|
|
190
|
+
|
|
153
191
|
### 2. Initialize Your Project
|
|
154
192
|
|
|
155
193
|
```bash
|
|
@@ -196,10 +234,10 @@ atomic session connect
|
|
|
196
234
|
|
|
197
235
|
Session names follow a predictable pattern:
|
|
198
236
|
|
|
199
|
-
| Session type | Name format
|
|
200
|
-
| ------------ |
|
|
201
|
-
| Chat | `atomic-chat-<id>`
|
|
202
|
-
| Workflow | `atomic-wf-<workflow>-<id>`
|
|
237
|
+
| Session type | Name format | Example |
|
|
238
|
+
| ------------ | --------------------------- | -------------------------- |
|
|
239
|
+
| Chat | `atomic-chat-<id>` | `atomic-chat-a1b2c3d4` |
|
|
240
|
+
| Workflow | `atomic-wf-<workflow>-<id>` | `atomic-wf-ralph-x9y8z7w6` |
|
|
203
241
|
|
|
204
242
|
> **Tip:** If your terminal disconnects or you accidentally close the window, your session is still alive — just run `atomic session connect <session-name>` to pick up where you left off.
|
|
205
243
|
|
|
@@ -476,20 +514,85 @@ atomic workflow -a claude
|
|
|
476
514
|
|
|
477
515
|
</details>
|
|
478
516
|
|
|
517
|
+
<details>
|
|
518
|
+
<summary>Example: Background (headless) stages for parallel data gathering</summary>
|
|
519
|
+
|
|
520
|
+
Stages can run in **headless mode** (`headless: true`) — they execute the provider SDK in-process instead of spawning a tmux window. Headless stages are invisible in the workflow graph but tracked via a background task counter in the statusline. Use them for parallel data-gathering tasks that don't need a visible TUI.
|
|
521
|
+
|
|
522
|
+
```ts
|
|
523
|
+
import { defineWorkflow } from "@bastani/atomic/workflows";
|
|
524
|
+
|
|
525
|
+
export default defineWorkflow<"claude">({
|
|
526
|
+
name: "headless-demo",
|
|
527
|
+
description: "seed -> [3 headless background] -> merge",
|
|
528
|
+
})
|
|
529
|
+
.run(async (ctx) => {
|
|
530
|
+
const prompt = ctx.inputs.prompt ?? "";
|
|
531
|
+
|
|
532
|
+
// Visible stage: generate seed data
|
|
533
|
+
const seed = await ctx.stage(
|
|
534
|
+
{ name: "seed", description: "Generate overview" },
|
|
535
|
+
{}, {},
|
|
536
|
+
async (s) => {
|
|
537
|
+
const result = await s.session.query(prompt);
|
|
538
|
+
s.save(s.sessionId);
|
|
539
|
+
return String(result.output ?? "");
|
|
540
|
+
},
|
|
541
|
+
);
|
|
542
|
+
|
|
543
|
+
// Three parallel headless stages — invisible in graph, tracked by counter
|
|
544
|
+
const [pros, cons, uses] = await Promise.all([
|
|
545
|
+
ctx.stage({ name: "pros", headless: true }, {}, {}, async (s) => {
|
|
546
|
+
const r = await s.session.query(`List 3 pros:\n\n${seed.result}`);
|
|
547
|
+
s.save(s.sessionId);
|
|
548
|
+
return String(r.output ?? "");
|
|
549
|
+
}),
|
|
550
|
+
ctx.stage({ name: "cons", headless: true }, {}, {}, async (s) => {
|
|
551
|
+
const r = await s.session.query(`List 3 cons:\n\n${seed.result}`);
|
|
552
|
+
s.save(s.sessionId);
|
|
553
|
+
return String(r.output ?? "");
|
|
554
|
+
}),
|
|
555
|
+
ctx.stage({ name: "uses", headless: true }, {}, {}, async (s) => {
|
|
556
|
+
const r = await s.session.query(`List 3 use cases:\n\n${seed.result}`);
|
|
557
|
+
s.save(s.sessionId);
|
|
558
|
+
return String(r.output ?? "");
|
|
559
|
+
}),
|
|
560
|
+
]);
|
|
561
|
+
|
|
562
|
+
// Visible stage: merge background results
|
|
563
|
+
await ctx.stage(
|
|
564
|
+
{ name: "merge", description: "Combine results" },
|
|
565
|
+
{}, {},
|
|
566
|
+
async (s) => {
|
|
567
|
+
await s.session.query(
|
|
568
|
+
`Combine:\n\n## Pros\n${pros.result}\n\n## Cons\n${cons.result}\n\n## Uses\n${uses.result}`,
|
|
569
|
+
);
|
|
570
|
+
s.save(s.sessionId);
|
|
571
|
+
},
|
|
572
|
+
);
|
|
573
|
+
})
|
|
574
|
+
.compile();
|
|
575
|
+
```
|
|
576
|
+
|
|
577
|
+
The graph shows `seed → merge` — headless stages are transparent to the topology. The callback API (`s.client`, `s.session`, `s.save()`, `s.transcript()`, return values) is identical to interactive stages.
|
|
578
|
+
|
|
579
|
+
</details>
|
|
580
|
+
|
|
479
581
|
**Key capabilities:**
|
|
480
582
|
|
|
481
|
-
| Capability
|
|
482
|
-
|
|
|
483
|
-
| **Dynamic session spawning**
|
|
484
|
-
| **Native TypeScript control flow** | Use `for`, `if/else`, `Promise.all()`, `try/catch` — no framework DSL needed
|
|
485
|
-
| **Session return values**
|
|
486
|
-
| **Transcript passing**
|
|
487
|
-
| **Declared input schemas**
|
|
488
|
-
| **Interactive picker**
|
|
489
|
-
| **Nested sub-sessions**
|
|
490
|
-
| **Auto-inferred graph**
|
|
491
|
-
| **Provider-agnostic**
|
|
492
|
-
| **Live graph visualization**
|
|
583
|
+
| Capability | Description |
|
|
584
|
+
| ---------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
585
|
+
| **Dynamic session spawning** | Call `ctx.stage()` to spawn sessions at runtime — each gets its own tmux window and graph node |
|
|
586
|
+
| **Native TypeScript control flow** | Use `for`, `if/else`, `Promise.all()`, `try/catch` — no framework DSL needed |
|
|
587
|
+
| **Session return values** | Session callbacks can return data: `const h = await ctx.stage(...); h.result` |
|
|
588
|
+
| **Transcript passing** | Access prior session output via handle (`s.transcript(handle)`) or name (`s.transcript("name")`) |
|
|
589
|
+
| **Declared input schemas** | Add an `inputs: [...]` array to `defineWorkflow()` and the CLI materialises `--<field>=<value>` flags with built-in validation (required fields, enum membership, unknown flags) |
|
|
590
|
+
| **Interactive picker** | `atomic workflow -a <agent>` launches a fuzzy-searchable picker that renders each workflow's input schema as a form — no flag-memorisation required |
|
|
591
|
+
| **Nested sub-sessions** | Call `s.stage()` inside a session callback to spawn child sessions — visible as nested nodes in the graph |
|
|
592
|
+
| **Auto-inferred graph** | Graph topology auto-inferred from `await`/`Promise.all` patterns — no annotations needed |
|
|
593
|
+
| **Provider-agnostic** | Write raw SDK code for Claude, Copilot, or OpenCode inside each session callback |
|
|
594
|
+
| **Live graph visualization** | Sessions appear in the TUI graph as they're spawned — loops and conditionals are visible in real time |
|
|
595
|
+
| **Background (headless) stages** | Set `headless: true` on `ctx.stage()` to run stages in-process without a tmux window — invisible in graph, tracked by statusline counter, identical callback API |
|
|
493
596
|
|
|
494
597
|
**Deterministic execution guarantees:**
|
|
495
598
|
|
|
@@ -522,36 +625,37 @@ Use your workflow-creator skill to create a workflow that plans, implements, and
|
|
|
522
625
|
|
|
523
626
|
#### WorkflowContext (`ctx`) — top-level orchestrator
|
|
524
627
|
|
|
525
|
-
| Property
|
|
526
|
-
|
|
|
527
|
-
| `ctx.inputs`
|
|
528
|
-
| `ctx.agent`
|
|
529
|
-
| `ctx.stage(opts, clientOpts, sessionOpts, fn)` | `Promise<SessionHandle<T>>` | Spawn a session — returns handle with `name`, `id`, `result`
|
|
530
|
-
| `ctx.transcript(ref)`
|
|
531
|
-
| `ctx.getMessages(ref)`
|
|
628
|
+
| Property | Type | Description |
|
|
629
|
+
| ---------------------------------------------- | --------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
630
|
+
| `ctx.inputs` | `Record<string, string>` | Structured inputs for this run. Free-form workflows store their positional prompt under `ctx.inputs.prompt`; workflows with a declared `inputs` schema store one key per declared field |
|
|
631
|
+
| `ctx.agent` | `AgentType` | Which agent is running (`"claude"`, `"copilot"`, `"opencode"`) |
|
|
632
|
+
| `ctx.stage(opts, clientOpts, sessionOpts, fn)` | `Promise<SessionHandle<T>>` | Spawn a session — returns handle with `name`, `id`, `result` |
|
|
633
|
+
| `ctx.transcript(ref)` | `Promise<Transcript>` | Get a completed session's transcript (`{ path, content }`) |
|
|
634
|
+
| `ctx.getMessages(ref)` | `Promise<SavedMessage[]>` | Get a completed session's raw native messages |
|
|
532
635
|
|
|
533
636
|
#### SessionContext (`s`) — inside each session callback
|
|
534
637
|
|
|
535
|
-
| Property
|
|
536
|
-
|
|
|
537
|
-
| `s.client`
|
|
538
|
-
| `s.session`
|
|
539
|
-
| `s.inputs`
|
|
540
|
-
| `s.agent`
|
|
541
|
-
| `s.paneId`
|
|
542
|
-
| `s.sessionId`
|
|
543
|
-
| `s.sessionDir`
|
|
544
|
-
| `s.save(messages)`
|
|
545
|
-
| `s.transcript(ref)`
|
|
546
|
-
| `s.getMessages(ref)`
|
|
547
|
-
| `s.stage(opts, clientOpts, sessionOpts, fn)` | `Promise<SessionHandle<T>>` | Spawn a nested sub-session (child in the graph)
|
|
638
|
+
| Property | Type | Description |
|
|
639
|
+
| -------------------------------------------- | --------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
|
|
640
|
+
| `s.client` | `ProviderClient<A>` | Pre-created SDK client (auto-managed by runtime) |
|
|
641
|
+
| `s.session` | `ProviderSession<A>` | Pre-created provider session (auto-managed by runtime) |
|
|
642
|
+
| `s.inputs` | `Record<string, string>` | Same inputs record as `ctx.inputs`, forwarded into every stage so session callbacks can read values without closing over the outer `ctx` |
|
|
643
|
+
| `s.agent` | `AgentType` | Which agent is running |
|
|
644
|
+
| `s.paneId` | `string` | tmux pane ID for this session |
|
|
645
|
+
| `s.sessionId` | `string` | Session UUID |
|
|
646
|
+
| `s.sessionDir` | `string` | Path to this session's storage directory on disk |
|
|
647
|
+
| `s.save(messages)` | `SaveTranscript` | Save this session's output for subsequent sessions |
|
|
648
|
+
| `s.transcript(ref)` | `Promise<Transcript>` | Get a completed session's transcript |
|
|
649
|
+
| `s.getMessages(ref)` | `Promise<SavedMessage[]>` | Get a completed session's raw native messages |
|
|
650
|
+
| `s.stage(opts, clientOpts, sessionOpts, fn)` | `Promise<SessionHandle<T>>` | Spawn a nested sub-session (child in the graph) |
|
|
548
651
|
|
|
549
652
|
#### Session Options (`SessionRunOptions`)
|
|
550
653
|
|
|
551
|
-
| Property | Type | Description
|
|
552
|
-
| ------------- | ---------- |
|
|
553
|
-
| `name` | `string` | Unique session name within the workflow run
|
|
554
|
-
| `description` | `string?` | Human-readable description shown in the graph
|
|
654
|
+
| Property | Type | Description |
|
|
655
|
+
| ------------- | ---------- | ----------------------------------------------------------------------------------------------------- |
|
|
656
|
+
| `name` | `string` | Unique session name within the workflow run |
|
|
657
|
+
| `description` | `string?` | Human-readable description shown in the graph |
|
|
658
|
+
| `headless` | `boolean?` | When `true`, run in-process without a tmux window — invisible in graph, tracked by background counter |
|
|
555
659
|
|
|
556
660
|
The runtime auto-infers parent-child edges from execution order: sequential `await` creates a chain, while `Promise.all` creates parallel fan-out/fan-in — no annotations needed.
|
|
557
661
|
|
|
@@ -559,8 +663,8 @@ The runtime auto-infers parent-child edges from execution order: sequential `awa
|
|
|
559
663
|
|
|
560
664
|
Each provider saves transcripts differently:
|
|
561
665
|
|
|
562
|
-
| Provider | How to Save
|
|
563
|
-
| ------------ |
|
|
666
|
+
| Provider | How to Save |
|
|
667
|
+
| ------------ | ----------------------------------------------------------------- |
|
|
564
668
|
| **Claude** | `s.save(s.sessionId)` — auto-reads via `getSessionMessages()` |
|
|
565
669
|
| **Copilot** | `s.save(await session.getMessages())` — pass `SessionEvent[]` |
|
|
566
670
|
| **OpenCode** | `s.save(result.data!)` — pass the full `{ info, parts }` response |
|
|
@@ -569,10 +673,10 @@ Each provider saves transcripts differently:
|
|
|
569
673
|
|
|
570
674
|
The runtime auto-creates `s.client` and `s.session` — use them directly inside the callback:
|
|
571
675
|
|
|
572
|
-
| Agent
|
|
573
|
-
|
|
|
574
|
-
| **Claude**
|
|
575
|
-
| **Copilot**
|
|
676
|
+
| Agent | How to send a prompt |
|
|
677
|
+
| ------------ | ----------------------------------------------------------------------------------------------------- |
|
|
678
|
+
| **Claude** | `await s.session.query(prompt)` |
|
|
679
|
+
| **Copilot** | `await s.session.send({ prompt })` |
|
|
576
680
|
| **OpenCode** | `await s.client.session.prompt({ sessionID: s.session.id, parts: [{ type: "text", text: prompt }] })` |
|
|
577
681
|
|
|
578
682
|
#### Key Rules
|
|
@@ -583,6 +687,7 @@ The runtime auto-creates `s.client` and `s.session` — use them directly inside
|
|
|
583
687
|
4. Each session runs in its own tmux window with the chosen agent
|
|
584
688
|
5. Workflows are organized per-workflow: `.atomic/workflows/<name>/<agent>/index.ts`
|
|
585
689
|
6. Set up your workflow project with `bun init && bun add @bastani/atomic` — standard module resolution handles imports
|
|
690
|
+
7. Background (headless) stages use the same callback API — `s.client`, `s.session`, `s.save()`, return values all work identically
|
|
586
691
|
|
|
587
692
|
For the authoring walkthrough with worked examples, ask Atomic to use the `workflow-creator` skill or read the skill reference at `.agents/skills/workflow-creator/`.
|
|
588
693
|
|
|
@@ -860,33 +965,33 @@ During `atomic chat`, there is no Atomic-owned TUI — `atomic chat -a <agent>`
|
|
|
860
965
|
|
|
861
966
|
### CLI Commands
|
|
862
967
|
|
|
863
|
-
| Command
|
|
864
|
-
|
|
|
865
|
-
| `atomic init`
|
|
866
|
-
| `atomic chat`
|
|
867
|
-
| `atomic workflow`
|
|
868
|
-
| `atomic workflow list`
|
|
869
|
-
| `atomic session list`
|
|
870
|
-
| `atomic session connect [name]`
|
|
871
|
-
| `atomic completions <shell>`
|
|
968
|
+
| Command | Description |
|
|
969
|
+
| ------------------------------- | --------------------------------------------------------------------- |
|
|
970
|
+
| `atomic init` | Interactive project setup (agent selection, SCM choice, config sync) |
|
|
971
|
+
| `atomic chat` | Spawn the native agent CLI inside a tmux/psmux session |
|
|
972
|
+
| `atomic workflow` | Run a multi-session agent workflow with the Atomic orchestrator panel |
|
|
973
|
+
| `atomic workflow list` | List available workflows, grouped by source |
|
|
974
|
+
| `atomic session list` | List all running sessions on the atomic tmux socket |
|
|
975
|
+
| `atomic session connect [name]` | Attach to a session (interactive picker when no name given) |
|
|
976
|
+
| `atomic completions <shell>` | Output shell completion script (bash, zsh, fish, powershell) |
|
|
872
977
|
| `atomic config set <k> <v>` | Set configuration values (currently supports `telemetry`) |
|
|
873
978
|
|
|
874
979
|
#### Global Flags
|
|
875
980
|
|
|
876
981
|
These flags are available on all commands:
|
|
877
982
|
|
|
878
|
-
| Flag | Description
|
|
879
|
-
| --------------- |
|
|
880
|
-
| `-y, --yes` | Auto-confirm all prompts (non-interactive)
|
|
881
|
-
| `--no-banner` | Skip ASCII banner display
|
|
882
|
-
| `-v, --version` | Show version number
|
|
983
|
+
| Flag | Description |
|
|
984
|
+
| --------------- | ------------------------------------------ |
|
|
985
|
+
| `-y, --yes` | Auto-confirm all prompts (non-interactive) |
|
|
986
|
+
| `--no-banner` | Skip ASCII banner display |
|
|
987
|
+
| `-v, --version` | Show version number |
|
|
883
988
|
|
|
884
989
|
#### `atomic init` Flags
|
|
885
990
|
|
|
886
|
-
| Flag | Description
|
|
887
|
-
| -------------------- |
|
|
991
|
+
| Flag | Description |
|
|
992
|
+
| -------------------- | ------------------------------------------------- |
|
|
888
993
|
| `-a, --agent <name>` | Pre-select agent: `claude`, `opencode`, `copilot` |
|
|
889
|
-
| `-s, --scm <name>` | Pre-select SCM: `github`, `sapling`
|
|
994
|
+
| `-s, --scm <name>` | Pre-select SCM: `github`, `sapling` |
|
|
890
995
|
|
|
891
996
|
```bash
|
|
892
997
|
atomic init # Interactive setup
|
|
@@ -898,14 +1003,14 @@ atomic init --yes # Auto-confirm all prompts
|
|
|
898
1003
|
|
|
899
1004
|
The `session` command is available at three levels — scoped or global:
|
|
900
1005
|
|
|
901
|
-
| Command
|
|
902
|
-
|
|
|
903
|
-
| `atomic session list`
|
|
904
|
-
| `atomic session connect [name]`
|
|
905
|
-
| `atomic chat session list`
|
|
906
|
-
| `atomic chat session connect [name]`
|
|
907
|
-
| `atomic workflow session list`
|
|
908
|
-
| `atomic workflow session connect [name]`
|
|
1006
|
+
| Command | Description |
|
|
1007
|
+
| ---------------------------------------- | ----------------------------------------------------- |
|
|
1008
|
+
| `atomic session list` | List all running sessions |
|
|
1009
|
+
| `atomic session connect [name]` | Attach to a session (interactive picker when no name) |
|
|
1010
|
+
| `atomic chat session list` | List running chat sessions only |
|
|
1011
|
+
| `atomic chat session connect [name]` | Attach to a chat session |
|
|
1012
|
+
| `atomic workflow session list` | List running workflow sessions only |
|
|
1013
|
+
| `atomic workflow session connect [name]` | Attach to a workflow session |
|
|
909
1014
|
|
|
910
1015
|
Both `list` and `connect` accept `-a <agent>` (repeatable) to filter by agent backend.
|
|
911
1016
|
|
|
@@ -933,12 +1038,12 @@ atomic chat -a claude --verbose # Forward --verbose to claude
|
|
|
933
1038
|
|
|
934
1039
|
#### `atomic workflow` Flags
|
|
935
1040
|
|
|
936
|
-
| Flag
|
|
937
|
-
|
|
|
938
|
-
| `-n, --name <name>`
|
|
939
|
-
| `-a, --agent <name>`
|
|
940
|
-
| `--<field>=<value>`
|
|
941
|
-
| `[prompt...]`
|
|
1041
|
+
| Flag | Description |
|
|
1042
|
+
| -------------------- | ------------------------------------------------------------------------------------------------- |
|
|
1043
|
+
| `-n, --name <name>` | Workflow name (matches directory under `.atomic/workflows/<name>/`) |
|
|
1044
|
+
| `-a, --agent <name>` | Agent: `claude`, `opencode`, `copilot` |
|
|
1045
|
+
| `--<field>=<value>` | Structured input for workflows that declare an `inputs` schema (also accepts `--<field> <value>`) |
|
|
1046
|
+
| `[prompt...]` | Positional prompt for free-form workflows (rejected on workflows with a declared schema) |
|
|
942
1047
|
|
|
943
1048
|
The workflow command supports four invocation shapes:
|
|
944
1049
|
|
|
@@ -967,12 +1072,12 @@ Workflows that declare an `inputs: WorkflowInput[]` schema get CLI flag validati
|
|
|
967
1072
|
|
|
968
1073
|
Atomic ships tab-completion for **bash**, **zsh**, **fish**, and **PowerShell**. The `atomic completions <shell>` command prints the completion script to stdout — pipe it into your shell's config to enable.
|
|
969
1074
|
|
|
970
|
-
| Shell | One-liner (add to your rc file)
|
|
971
|
-
| ---------- |
|
|
972
|
-
| Bash | `eval "$(atomic completions bash)"` — add to `~/.bashrc`
|
|
973
|
-
| Zsh | `eval "$(atomic completions zsh)"` — add to `~/.zshrc`
|
|
974
|
-
| Fish | `atomic completions fish > ~/.config/fish/completions/atomic.fish`
|
|
975
|
-
| PowerShell | `atomic completions powershell \| Invoke-Expression` — add to `$PROFILE`
|
|
1075
|
+
| Shell | One-liner (add to your rc file) |
|
|
1076
|
+
| ---------- | ------------------------------------------------------------------------- |
|
|
1077
|
+
| Bash | `eval "$(atomic completions bash)"` — add to `~/.bashrc` |
|
|
1078
|
+
| Zsh | `eval "$(atomic completions zsh)"` — add to `~/.zshrc` |
|
|
1079
|
+
| Fish | `atomic completions fish > ~/.config/fish/completions/atomic.fish` |
|
|
1080
|
+
| PowerShell | `atomic completions powershell \| Invoke-Expression` — add to `$PROFILE` |
|
|
976
1081
|
|
|
977
1082
|
> **Tip:** The bootstrap installer (`install.sh` / `install.ps1`) automatically installs completions for your detected shell.
|
|
978
1083
|
|
|
@@ -1017,23 +1122,23 @@ Created automatically during `atomic init`. Resolution order:
|
|
|
1017
1122
|
}
|
|
1018
1123
|
```
|
|
1019
1124
|
|
|
1020
|
-
| Field | Type
|
|
1021
|
-
| -------------- |
|
|
1022
|
-
| `$schema` | string
|
|
1023
|
-
| `version` | number
|
|
1024
|
-
| `scm` | string
|
|
1025
|
-
| `lastUpdated` | string
|
|
1026
|
-
| `trustedPaths` | array
|
|
1125
|
+
| Field | Type | Description |
|
|
1126
|
+
| -------------- | ------ | --------------------------------------------------------------------------------------------------------- |
|
|
1127
|
+
| `$schema` | string | JSON Schema URL for editor autocomplete |
|
|
1128
|
+
| `version` | number | Config schema version (currently `1`) |
|
|
1129
|
+
| `scm` | string | Source control: `github` or `sapling` |
|
|
1130
|
+
| `lastUpdated` | string | ISO 8601 timestamp of the last update |
|
|
1131
|
+
| `trustedPaths` | array | Workspaces that have completed provider onboarding via `atomic init`; atomic skips re-prompting for these |
|
|
1027
1132
|
|
|
1028
1133
|
> **Note:** Model selection and reasoning effort are managed by each underlying agent CLI (e.g. Claude Code's `/model`), not by Atomic itself. Atomic's chat command spawns the agent's native TUI — use the agent's own controls to pick a model or adjust reasoning effort.
|
|
1029
1134
|
|
|
1030
1135
|
### Agent-Specific Files
|
|
1031
1136
|
|
|
1032
|
-
| Agent | Folder | Skills
|
|
1033
|
-
| -------------- | ------------ |
|
|
1137
|
+
| Agent | Folder | Skills | Context File |
|
|
1138
|
+
| -------------- | ------------ | ----------------------------------------------- | ------------ |
|
|
1034
1139
|
| Claude Code | `.claude/` | `.claude/skills/` (symlink → `.agents/skills/`) | `CLAUDE.md` |
|
|
1035
|
-
| OpenCode | `.opencode/` | `.agents/skills/`
|
|
1036
|
-
| GitHub Copilot | `.github/` | `.agents/skills/`
|
|
1140
|
+
| OpenCode | `.opencode/` | `.agents/skills/` | `AGENTS.md` |
|
|
1141
|
+
| GitHub Copilot | `.github/` | `.agents/skills/` | `AGENTS.md` |
|
|
1037
1142
|
|
|
1038
1143
|
> **Note:** All three agents share the same skill set via `.agents/skills/`. Claude Code accesses them through a `.claude/skills/` symlink that points to `.agents/skills/`, so a single skill directory serves all agents.
|
|
1039
1144
|
|
|
@@ -1072,11 +1177,11 @@ your-project/
|
|
|
1072
1177
|
}
|
|
1073
1178
|
```
|
|
1074
1179
|
|
|
1075
|
-
| Feature
|
|
1076
|
-
|
|
1077
|
-
| Atomic + Claude Code | `ghcr.io/flora131/atomic/claude:1`
|
|
1078
|
-
| Atomic + OpenCode
|
|
1079
|
-
| Atomic + Copilot CLI | `ghcr.io/flora131/atomic/copilot:1`
|
|
1180
|
+
| Feature | Reference | Agent |
|
|
1181
|
+
| -------------------- | ------------------------------------ | ---------------------------------------------------- |
|
|
1182
|
+
| Atomic + Claude Code | `ghcr.io/flora131/atomic/claude:1` | [Claude Code](https://claude.ai) |
|
|
1183
|
+
| Atomic + OpenCode | `ghcr.io/flora131/atomic/opencode:1` | [OpenCode](https://opencode.ai) |
|
|
1184
|
+
| Atomic + Copilot CLI | `ghcr.io/flora131/atomic/copilot:1` | [Copilot CLI](https://github.com/github/copilot-cli) |
|
|
1080
1185
|
|
|
1081
1186
|
Each feature installs the Atomic CLI, all shared dependencies (bun, playwright-cli), agent-specific configurations (agents, skills), and the agent CLI itself. Features are versioned in sync with Atomic CLI releases.
|
|
1082
1187
|
|
|
@@ -1337,19 +1442,19 @@ If agents fail to spawn on Windows, ensure the agent CLI is in your PATH. Atomic
|
|
|
1337
1442
|
|
|
1338
1443
|
**In short:** Spec-Kit works well for greenfield projects where you start from a spec and use a single Copilot session to generate code. Atomic is built for the harder case — large existing codebases where you need to research what's already there before changing anything. It gives you multi-session pipelines with isolated context windows (so the agent doesn't degrade over long tasks), deterministic execution, and support for Claude Code, OpenCode, and Copilot CLI instead of just one agent. If you're starting a new project from scratch with Copilot, Spec-Kit is simpler. If you're working on an established codebase and need chained sessions, parallel research, or autonomous execution, that's what Atomic is for.
|
|
1339
1444
|
|
|
1340
|
-
| Aspect
|
|
1341
|
-
|
|
|
1342
|
-
| **Focus**
|
|
1343
|
-
| **First Step**
|
|
1344
|
-
| **Workflow Definition**
|
|
1345
|
-
| **Session Management**
|
|
1346
|
-
| **Data Flow**
|
|
1347
|
-
| **Agent Support**
|
|
1348
|
-
| **Sub-Agents**
|
|
1349
|
-
| **Skills**
|
|
1350
|
-
| **Autonomous Execution** | Not available
|
|
1351
|
-
| **Execution Guarantees** | Non-deterministic
|
|
1352
|
-
| **Isolation**
|
|
1445
|
+
| Aspect | Spec-Kit | Atomic |
|
|
1446
|
+
| ------------------------ | -------------------------------------------- | --------------------------------------------------------------------------------------------------- |
|
|
1447
|
+
| **Focus** | Greenfield projects with spec-first workflow | Large existing codebases + greenfield — research-first or spec-first |
|
|
1448
|
+
| **First Step** | Define project principles and specs | Analyze existing architecture with parallel research sub-agents |
|
|
1449
|
+
| **Workflow Definition** | Shell scripts and markdown templates | TypeScript Workflow SDK (`defineWorkflow()` → `.run()` → `.compile()`) with deterministic execution |
|
|
1450
|
+
| **Session Management** | Single agent session | Multi-session pipelines — sequential and parallel — each in isolated context windows |
|
|
1451
|
+
| **Data Flow** | Manual — copy output between steps | Controlled transcript passing via `ctx.transcript()` and `ctx.getMessages()` |
|
|
1452
|
+
| **Agent Support** | GitHub Copilot CLI | Claude Code + OpenCode + Copilot CLI — switch with a flag |
|
|
1453
|
+
| **Sub-Agents** | Single general-purpose agent | 12 specialized sub-agents with scoped tools and isolated contexts |
|
|
1454
|
+
| **Skills** | Not available | 58 built-in skills (development, design, docs, agent architecture) |
|
|
1455
|
+
| **Autonomous Execution** | Not available | Ralph — multi-hour autonomous sessions with plan/implement/review/debug loop |
|
|
1456
|
+
| **Execution Guarantees** | Non-deterministic | Deterministic — strict step ordering, frozen definitions, controlled transcript access |
|
|
1457
|
+
| **Isolation** | Not addressed | Devcontainer features for containerized execution |
|
|
1353
1458
|
|
|
1354
1459
|
</details>
|
|
1355
1460
|
|
|
@@ -1360,20 +1465,20 @@ If agents fail to spawn on Windows, ensure the agent CLI is in your PATH. Atomic
|
|
|
1360
1465
|
|
|
1361
1466
|
**In short:** DeerFlow is a general-purpose agent orchestrator — it handles research, report generation, and other tasks through a LangGraph DAG with a web UI. Atomic is narrowly focused on coding workflows. The key difference is that Atomic runs on top of production coding agents (Claude Code, OpenCode, Copilot CLI) rather than reimplementing coding tools through a generic API. You get each agent's native file editing, permissions, MCP integrations, and hooks out of the box. Atomic also gives you deterministic execution — same step order, same data flow every run — which matters when you're encoding a team's dev process and need it to be reproducible across people and CI. If you need a general-purpose agent pipeline with a web UI, DeerFlow is the better fit. If you need coding-specific workflows with strict execution guarantees, Atomic is more appropriate.
|
|
1362
1467
|
|
|
1363
|
-
| Aspect
|
|
1364
|
-
|
|
|
1365
|
-
| **Runtime**
|
|
1366
|
-
| **Agent SDKs**
|
|
1367
|
-
| **Focus**
|
|
1368
|
-
| **Workflow Definition** | LangGraph state machines with graph nodes
|
|
1369
|
-
| **Execution Model**
|
|
1370
|
-
| **Parallelism**
|
|
1371
|
-
| **Sub-Agents**
|
|
1372
|
-
| **Skills**
|
|
1373
|
-
| **Isolation**
|
|
1374
|
-
| **Interface**
|
|
1375
|
-
| **Autonomous**
|
|
1376
|
-
| **Distribution**
|
|
1468
|
+
| Aspect | DeerFlow | Atomic |
|
|
1469
|
+
| ----------------------- | ----------------------------------------------- | --------------------------------------------------------------------------------------------- |
|
|
1470
|
+
| **Runtime** | Python (LangGraph) | TypeScript (Bun) |
|
|
1471
|
+
| **Agent SDKs** | OpenAI-compatible API | Claude Code + OpenCode + Copilot CLI native SDKs — write raw SDK code in each session |
|
|
1472
|
+
| **Focus** | General-purpose agent tasks (research, reports) | Coding-specific: research, spec, implement, review, debug |
|
|
1473
|
+
| **Workflow Definition** | LangGraph state machines with graph nodes | TypeScript Workflow SDK — `defineWorkflow()` → `.run()` → `.compile()` |
|
|
1474
|
+
| **Execution Model** | DAG-based with conditional edges | Deterministic — strict step ordering, frozen definitions, controlled transcript passing |
|
|
1475
|
+
| **Parallelism** | Via LangGraph branch nodes | Native parallel sessions via `Promise.all()` with `ctx.session()` in isolated context windows |
|
|
1476
|
+
| **Sub-Agents** | Researcher, coder, reporter nodes | 12 specialized sub-agents with scoped tools (planner, worker, reviewer, debugger, etc.) |
|
|
1477
|
+
| **Skills** | Not available | 58 built-in skills auto-invoked by context |
|
|
1478
|
+
| **Isolation** | Sandbox containers | Devcontainer features + git worktrees |
|
|
1479
|
+
| **Interface** | Web UI (Streamlit) | Terminal chat with tmux-based session management |
|
|
1480
|
+
| **Autonomous** | Not available | Ralph — bounded iteration with plan/implement/review/debug loop |
|
|
1481
|
+
| **Distribution** | `pip install` + local server | `bun install -g` or devcontainer features |
|
|
1377
1482
|
|
|
1378
1483
|
</details>
|
|
1379
1484
|
|
|
@@ -1384,28 +1489,28 @@ If agents fail to spawn on Windows, ensure the agent CLI is in your PATH. Atomic
|
|
|
1384
1489
|
|
|
1385
1490
|
**In short:** Hermes Agent is a broad AI assistant that learns and improves across sessions, connects to messaging platforms, and works with any OpenAI-compatible model. Atomic is a coding-specific harness built for engineering teams. It lets you encode your development process as deterministic TypeScript workflows that run identically across team members, machines, and CI pipelines. Instead of reimplementing coding tools from scratch, Atomic inherits production-hardened tool ecosystems from Claude Code, OpenCode, and Copilot CLI — including their permission systems, MCP integrations, and hooks — giving you two independent security boundaries (devcontainer isolation + agent permissions) rather than one. Each workflow session runs in a fresh context window with only distilled transcripts passed forward, so output stays sharp over multi-hour coding tasks instead of degrading through lossy compression. And because skills are developer-authored and version-controlled, they don't drift or accumulate errors the way auto-generated skills can. Choose Hermes if you want a self-improving general-purpose agent with multi-platform messaging; choose Atomic if you want repeatable, auditable coding workflows with strict execution guarantees and production-grade isolation.
|
|
1386
1491
|
|
|
1387
|
-
| Aspect
|
|
1388
|
-
|
|
|
1389
|
-
| **Focus**
|
|
1390
|
-
| **Runtime**
|
|
1391
|
-
| **Agent SDKs**
|
|
1392
|
-
| **Workflow Definition**
|
|
1393
|
-
| **Session Management**
|
|
1394
|
-
| **Data Flow**
|
|
1395
|
-
| **Self-Improvement**
|
|
1396
|
-
| **Sub-Agents**
|
|
1397
|
-
| **Skills**
|
|
1398
|
-
| **Interface**
|
|
1399
|
-
| **Isolation**
|
|
1400
|
-
| **Autonomous Execution**
|
|
1401
|
-
| **Execution Guarantees**
|
|
1402
|
-
| **Team Process Encoding** | Personal assistant — no concept of team-shared workflows
|
|
1403
|
-
| **Coding Agent Tooling**
|
|
1404
|
-
| **Reproducibility**
|
|
1405
|
-
| **Context Quality**
|
|
1406
|
-
| **Skill Authoring**
|
|
1407
|
-
| **Security Model**
|
|
1408
|
-
| **Distribution**
|
|
1492
|
+
| Aspect | Hermes Agent | Atomic |
|
|
1493
|
+
| ------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
1494
|
+
| **Focus** | General-purpose AI assistant (coding, messaging, smart home, research) | Coding-specific: multi-session workflows on coding agents |
|
|
1495
|
+
| **Runtime** | Python 3.11+ (uv) | TypeScript (Bun) |
|
|
1496
|
+
| **Agent SDKs** | OpenAI-compatible API as universal adapter (200+ models via OpenRouter) | Claude Code + OpenCode + Copilot CLI native SDKs — write raw SDK code in each session |
|
|
1497
|
+
| **Workflow Definition** | Cron scheduler + subagent delegation | TypeScript Workflow SDK — `defineWorkflow()` → `.run()` → `.compile()` |
|
|
1498
|
+
| **Session Management** | Single conversation loop with context compression | Multi-session pipelines — sequential and parallel — each in isolated context windows |
|
|
1499
|
+
| **Data Flow** | In-context within a single conversation | Controlled transcript passing via `ctx.transcript()` and `ctx.getMessages()` |
|
|
1500
|
+
| **Self-Improvement** | Closed learning loop — auto-creates skills from experience, persistent user model via Honcho | Skills authored by developers; memory via CLAUDE.md / AGENTS.md context files |
|
|
1501
|
+
| **Sub-Agents** | `delegate_task` spawns isolated subagents | 12 specialized sub-agents with scoped tools and model tiers (Opus, Sonnet, Haiku) |
|
|
1502
|
+
| **Skills** | 40+ tools + community Skills Hub (agentskills.io) | 58 built-in skills (development, design, docs, agent architecture) |
|
|
1503
|
+
| **Interface** | Terminal TUI + multi-platform messaging gateway (Telegram, Discord, Slack, WhatsApp, etc.) | Terminal chat with tmux-based session management |
|
|
1504
|
+
| **Isolation** | Six terminal backends (local, Docker, SSH, Daytona, Singularity, Modal) | Devcontainer features + git worktrees |
|
|
1505
|
+
| **Autonomous Execution** | Cron scheduler with inactivity-based timeouts | Ralph — bounded iteration with plan/implement/review/debug loop |
|
|
1506
|
+
| **Execution Guarantees** | Non-deterministic conversation loop | Deterministic — strict step ordering, frozen definitions, controlled transcript access |
|
|
1507
|
+
| **Team Process Encoding** | Personal assistant — no concept of team-shared workflows | Encode your team's dev process as TypeScript — repeatable across members, projects, and CI |
|
|
1508
|
+
| **Coding Agent Tooling** | Reimplements file/terminal tools from scratch via `model_tools.py` | Inherits production-hardened tool ecosystems from Claude Code, OpenCode, and Copilot CLI (file editing, permissions, MCP, hooks) |
|
|
1509
|
+
| **Reproducibility** | Conversation loop produces different execution paths each run | Frozen workflow definitions run identically across machines, team members, and CI pipelines |
|
|
1510
|
+
| **Context Quality** | Lossy compression within a single conversation — degrades on long coding tasks | Fresh context window per session with only distilled transcripts passed forward — stays sharp over multi-hour tasks |
|
|
1511
|
+
| **Skill Authoring** | Auto-created skills may drift, accumulate errors, or encode bad patterns over time | Developer-authored, version-controlled skills — intentional and auditable |
|
|
1512
|
+
| **Security Model** | Command approval + container backends (single boundary) | Devcontainer isolation + coding agent permission systems (Claude Code permissions, Copilot safeguards) — two independent security boundaries |
|
|
1513
|
+
| **Distribution** | `uv` / `pip` | `bun install -g` or devcontainer features |
|
|
1409
1514
|
|
|
1410
1515
|
</details>
|
|
1411
1516
|
|