weavemark 0.8.0__tar.gz
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.
- weavemark-0.8.0/.gitignore +54 -0
- weavemark-0.8.0/LICENSE +21 -0
- weavemark-0.8.0/PKG-INFO +511 -0
- weavemark-0.8.0/README.md +460 -0
- weavemark-0.8.0/promplets/README.md +89 -0
- weavemark-0.8.0/promplets/catalog/executable/childrens-book.weavemark.md +78 -0
- weavemark-0.8.0/promplets/catalog/executable/collaborative-investment-strategy.weavemark.md +68 -0
- weavemark-0.8.0/promplets/catalog/executable/collaborative-investment-strategy.weavemark.yaml +22 -0
- weavemark-0.8.0/promplets/catalog/executable/collaborative-writer.weavemark.md +62 -0
- weavemark-0.8.0/promplets/catalog/executable/collaborative-writer.weavemark.yaml +20 -0
- weavemark-0.8.0/promplets/catalog/executable/comic-strip.weavemark.md +123 -0
- weavemark-0.8.0/promplets/catalog/executable/companions/public_finance_reference.py +171 -0
- weavemark-0.8.0/promplets/catalog/executable/companions/recurring_topic_monitor.py +837 -0
- weavemark-0.8.0/promplets/catalog/executable/contrastive-mining.weavemark.md +113 -0
- weavemark-0.8.0/promplets/catalog/executable/contrastive-mining.weavemark.yaml +17 -0
- weavemark-0.8.0/promplets/catalog/executable/crisis-strategy-analyzer.earthquake.vars.json +8 -0
- weavemark-0.8.0/promplets/catalog/executable/crisis-strategy-analyzer.weavemark.md +152 -0
- weavemark-0.8.0/promplets/catalog/executable/financial-independence-goal-plan.weavemark.md +21 -0
- weavemark-0.8.0/promplets/catalog/executable/portfolio-calculator-agent.weavemark.md +45 -0
- weavemark-0.8.0/promplets/catalog/executable/react-agent.weavemark.md +67 -0
- weavemark-0.8.0/promplets/catalog/executable/recurring-topic-monitor.weavemark.md +134 -0
- weavemark-0.8.0/promplets/catalog/executable/recurring-topic-monitor.weavemark.yaml +23 -0
- weavemark-0.8.0/promplets/catalog/executable/reflection-solver.weavemark.md +64 -0
- weavemark-0.8.0/promplets/catalog/executable/reflection-writer.weavemark.md +56 -0
- weavemark-0.8.0/promplets/catalog/executable/reflection-writer.weavemark.yaml +22 -0
- weavemark-0.8.0/promplets/catalog/executable/self-consistency-solver.weavemark.md +39 -0
- weavemark-0.8.0/promplets/catalog/executable/self-consistency-solver.weavemark.yaml +11 -0
- weavemark-0.8.0/promplets/catalog/executable/self-improving-image.weavemark.md +35 -0
- weavemark-0.8.0/promplets/catalog/executable/simplified-tree-of-thought-solver.weavemark.md +55 -0
- weavemark-0.8.0/promplets/catalog/executable/spec-discovery.weavemark.md +57 -0
- weavemark-0.8.0/promplets/catalog/executable/storyboard-chain.weavemark.md +32 -0
- weavemark-0.8.0/promplets/catalog/executable/storyboard-chain.weavemark.yaml +10 -0
- weavemark-0.8.0/promplets/catalog/executable/tree-of-thought-solver.weavemark.md +73 -0
- weavemark-0.8.0/promplets/catalog/executable/tree-of-thought-solver.weavemark.yaml +21 -0
- weavemark-0.8.0/promplets/catalog/standalone/adaptive-interview.weavemark.md +135 -0
- weavemark-0.8.0/promplets/catalog/standalone/ai-kanban-board.vars.json +4 -0
- weavemark-0.8.0/promplets/catalog/standalone/ai-kanban-board.weavemark.md +246 -0
- weavemark-0.8.0/promplets/catalog/standalone/analysis-of-competing-hypotheses.vars.json +8 -0
- weavemark-0.8.0/promplets/catalog/standalone/analysis-of-competing-hypotheses.weavemark.md +153 -0
- weavemark-0.8.0/promplets/catalog/standalone/api-docs-generator.vars.json +27 -0
- weavemark-0.8.0/promplets/catalog/standalone/api-docs-generator.weavemark.md +59 -0
- weavemark-0.8.0/promplets/catalog/standalone/compoundvision-investment-simulator.historical.vars.json +3 -0
- weavemark-0.8.0/promplets/catalog/standalone/compoundvision-investment-simulator.montecarlo.vars.json +3 -0
- weavemark-0.8.0/promplets/catalog/standalone/compoundvision-investment-simulator.weavemark.md +200 -0
- weavemark-0.8.0/promplets/catalog/standalone/consulting-proposal.weavemark.md +84 -0
- weavemark-0.8.0/promplets/catalog/standalone/creative-ideation.weavemark.md +88 -0
- weavemark-0.8.0/promplets/catalog/standalone/decision-advisor.weavemark.md +71 -0
- weavemark-0.8.0/promplets/catalog/standalone/deep-summary.weavemark.md +52 -0
- weavemark-0.8.0/promplets/catalog/standalone/fieldpulse-iot-agriculture.vars.json +4 -0
- weavemark-0.8.0/promplets/catalog/standalone/fieldpulse-iot-agriculture.weavemark.md +146 -0
- weavemark-0.8.0/promplets/catalog/standalone/financial-independence-decision.weavemark.md +62 -0
- weavemark-0.8.0/promplets/catalog/standalone/financial-independence-goal-plan.weavemark.md +14 -0
- weavemark-0.8.0/promplets/catalog/standalone/investment-brief.weavemark.md +56 -0
- weavemark-0.8.0/promplets/catalog/standalone/issue-tree-analysis.vars.json +7 -0
- weavemark-0.8.0/promplets/catalog/standalone/issue-tree-analysis.weavemark.md +114 -0
- weavemark-0.8.0/promplets/catalog/standalone/iterative-onboarding-prompt.weavemark.md +28 -0
- weavemark-0.8.0/promplets/catalog/standalone/knowledge-base-article.weavemark.md +64 -0
- weavemark-0.8.0/promplets/catalog/standalone/learning-tutor.weavemark.md +57 -0
- weavemark-0.8.0/promplets/catalog/standalone/live-investment-decision-brief.weavemark.md +71 -0
- weavemark-0.8.0/promplets/catalog/standalone/logo-generator.weavemark.md +13 -0
- weavemark-0.8.0/promplets/catalog/standalone/market-research-brief.weavemark.md +70 -0
- weavemark-0.8.0/promplets/catalog/standalone/mece-structuring.vars.json +7 -0
- weavemark-0.8.0/promplets/catalog/standalone/mece-structuring.weavemark.md +120 -0
- weavemark-0.8.0/promplets/catalog/standalone/messy-notes-action-plan.weavemark.md +59 -0
- weavemark-0.8.0/promplets/catalog/standalone/mintlite-finance-app.vars.json +4 -0
- weavemark-0.8.0/promplets/catalog/standalone/mintlite-finance-app.weavemark.md +93 -0
- weavemark-0.8.0/promplets/catalog/standalone/multi-persona-debate.weavemark.md +87 -0
- weavemark-0.8.0/promplets/catalog/standalone/passive-income-android-app.weavemark.md +39 -0
- weavemark-0.8.0/promplets/catalog/standalone/program-debugging-assistant.weavemark.md +87 -0
- weavemark-0.8.0/promplets/catalog/standalone/program-review-checklist.weavemark.md +79 -0
- weavemark-0.8.0/promplets/catalog/standalone/prompt-refactoring-pipeline.weavemark.md +79 -0
- weavemark-0.8.0/promplets/catalog/standalone/prompt-refiner.weavemark.md +55 -0
- weavemark-0.8.0/promplets/catalog/standalone/research-brief.weavemark.md +66 -0
- weavemark-0.8.0/promplets/catalog/standalone/support-ticket-prompt-pack.weavemark.md +39 -0
- weavemark-0.8.0/promplets/catalog/standalone/tutorial-generator.weavemark.md +76 -0
- weavemark-0.8.0/promplets/catalog/standalone/voidborne-roguelike.vars.json +3 -0
- weavemark-0.8.0/promplets/catalog/standalone/voidborne-roguelike.weavemark.md +94 -0
- weavemark-0.8.0/promplets/domains/creative/fragments/illustrated-story-core.weavemark.md +248 -0
- weavemark-0.8.0/promplets/domains/creative/fragments/picture-book-html.weavemark.md +65 -0
- weavemark-0.8.0/promplets/domains/finance/fragments/finance-context-sufficiency.weavemark.md +43 -0
- weavemark-0.8.0/promplets/domains/finance/fragments/finance-safety.weavemark.md +56 -0
- weavemark-0.8.0/promplets/domains/finance/fragments/investment-decision.weavemark.md +61 -0
- weavemark-0.8.0/promplets/domains/finance/fragments/passive-income-capital-growth.weavemark.md +61 -0
- weavemark-0.8.0/promplets/domains/finance/fragments/passive-income-forecasting.weavemark.md +52 -0
- weavemark-0.8.0/promplets/domains/game-design/fragments/mechanics/deckbuilder.weavemark.md +45 -0
- weavemark-0.8.0/promplets/domains/game-design/fragments/mechanics/ecosystem-simulation.weavemark.md +45 -0
- weavemark-0.8.0/promplets/domains/game-design/fragments/mechanics/tower-defense.weavemark.md +47 -0
- weavemark-0.8.0/promplets/domains/game-design/fragments/production/playability-readability.weavemark.md +42 -0
- weavemark-0.8.0/promplets/domains/game-design/fragments/production/progression-balance-model.weavemark.md +40 -0
- weavemark-0.8.0/promplets/domains/product/fragments/metaphor-to-product.weavemark.md +36 -0
- weavemark-0.8.0/promplets/domains/product/fragments/product-validation-surface.weavemark.md +32 -0
- weavemark-0.8.0/promplets/domains/product/fragments/release-artifact-readiness.weavemark.md +43 -0
- weavemark-0.8.0/promplets/domains/product/fragments/release-readiness-gate.weavemark.md +42 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/assets/generative-2d-sprites.weavemark.md +237 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/debugging/root-cause-debugging.weavemark.md +41 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/foundations/base-spec-author.weavemark.md +23 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/foundations/software-spec.weavemark.md +54 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/models/model-finance.weavemark.md +72 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/modules/module-activity-stream.weavemark.md +59 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/modules/module-ai-features.weavemark.md +22 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/modules/module-auth.weavemark.md +28 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/modules/module-card.weavemark.md +85 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/modules/module-context-attachments.weavemark.md +60 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/modules/module-dashboard.weavemark.md +35 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/modules/module-local-sqlite-storage.weavemark.md +72 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/modules/module-mobile-financial-dashboard.weavemark.md +36 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/modules/module-notifications.weavemark.md +25 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/modules/module-output-surfaces.weavemark.md +69 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/modules/module-realtime.weavemark.md +27 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/modules/module-rest-api.weavemark.md +41 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/modules/module-workflow-board.weavemark.md +66 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/stacks/stack-android-kotlin-compose.weavemark.md +39 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/stacks/stack-python-fastapi-postgres.weavemark.md +32 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/stacks/stack-rust-bevy.weavemark.md +36 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/stacks/stack-typescript-nextjs-prisma-sqlite.weavemark.md +52 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/stacks/stack-typescript-nextjs-prisma.weavemark.md +38 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/types/type-2d-game.weavemark.md +38 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/types/type-android-app.weavemark.md +38 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/types/type-local-first-webapp.weavemark.md +47 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/types/type-saas-webapp.weavemark.md +37 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/types/web-based-game.weavemark.md +64 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/validation/playwright-mcp-browser-validation.weavemark.md +81 -0
- weavemark-0.8.0/promplets/domains/programming/fragments/validation/release-validation-matrix.weavemark.md +39 -0
- weavemark-0.8.0/promplets/domains/research/fragments/deep-web-source-discovery.weavemark.md +52 -0
- weavemark-0.8.0/promplets/domains/research/fragments/news-event-triage.weavemark.md +55 -0
- weavemark-0.8.0/promplets/domains/research/fragments/news-quality.weavemark.md +42 -0
- weavemark-0.8.0/promplets/domains/research/fragments/recurring-topic-monitor.weavemark.md +41 -0
- weavemark-0.8.0/promplets/domains/work-intelligence/fragments/idea-execution-workspace.weavemark.md +56 -0
- weavemark-0.8.0/promplets/domains/work-intelligence/fragments/signal-to-action-workflow.weavemark.md +56 -0
- weavemark-0.8.0/promplets/domains/work-intelligence/fragments/topic-intelligence-monitor.weavemark.md +62 -0
- weavemark-0.8.0/promplets/experimental/fslm/fslm-support-triage-sugared.weavemark.json +23 -0
- weavemark-0.8.0/promplets/experimental/fslm/fslm-support-triage-sugared.weavemark.md +114 -0
- weavemark-0.8.0/promplets/experimental/fslm/fslm-support-triage.weavemark.json +21 -0
- weavemark-0.8.0/promplets/experimental/fslm/fslm-support-triage.weavemark.md +37 -0
- weavemark-0.8.0/promplets/experimental/fslm/fslm.weavemark.md +81 -0
- weavemark-0.8.0/promplets/experimental/fslm/support-triage.fslm.yaml +32 -0
- weavemark-0.8.0/promplets/experimental/studies/auto-research-ablation.weavemark.md +163 -0
- weavemark-0.8.0/promplets/experimental/weave/companions/market_data.py +263 -0
- weavemark-0.8.0/promplets/experimental/weave/weave-market-snapshot.weavemark.md +83 -0
- weavemark-0.8.0/promplets/stdlib/definitions/planning/goals.weavemark.md +103 -0
- weavemark-0.8.0/promplets/stdlib/fragments/analysis/ach-core.weavemark.md +60 -0
- weavemark-0.8.0/promplets/stdlib/fragments/analysis/financial-resilience-lens.weavemark.md +43 -0
- weavemark-0.8.0/promplets/stdlib/fragments/analysis/issue-tree-core.weavemark.md +63 -0
- weavemark-0.8.0/promplets/stdlib/fragments/analysis/mece-core.weavemark.md +79 -0
- weavemark-0.8.0/promplets/stdlib/fragments/analysis/optionality-decision.weavemark.md +32 -0
- weavemark-0.8.0/promplets/stdlib/fragments/analysis/strategic-problem-analysis.weavemark.md +34 -0
- weavemark-0.8.0/promplets/stdlib/fragments/decision/forecast-uncertainty.weavemark.md +32 -0
- weavemark-0.8.0/promplets/stdlib/fragments/decision/strategy-selection.weavemark.md +35 -0
- weavemark-0.8.0/promplets/stdlib/fragments/decision/values-tradeoff.weavemark.md +33 -0
- weavemark-0.8.0/promplets/stdlib/fragments/guidelines/context-sufficiency.weavemark.md +56 -0
- weavemark-0.8.0/promplets/stdlib/fragments/guidelines/evidence-quality.weavemark.md +30 -0
- weavemark-0.8.0/promplets/stdlib/fragments/guidelines/prompt-quality.weavemark.md +46 -0
- weavemark-0.8.0/promplets/stdlib/fragments/guidelines/release-evidence-quality.weavemark.md +36 -0
- weavemark-0.8.0/promplets/stdlib/fragments/guidelines/research-rigor.weavemark.md +48 -0
- weavemark-0.8.0/promplets/stdlib/fragments/ideation/contrastive-mining-core.weavemark.md +42 -0
- weavemark-0.8.0/promplets/stdlib/fragments/ideation/multi-persona-debate-core.weavemark.md +35 -0
- weavemark-0.8.0/promplets/stdlib/fragments/ideation/reverse-brainstorming.weavemark.md +243 -0
- weavemark-0.8.0/promplets/stdlib/fragments/ideation/scamper.weavemark.md +220 -0
- weavemark-0.8.0/promplets/stdlib/fragments/ideation/six-thinking-hats.weavemark.md +221 -0
- weavemark-0.8.0/promplets/stdlib/fragments/lenses/comparative-alternatives.weavemark.md +33 -0
- weavemark-0.8.0/promplets/stdlib/fragments/lenses/decision-gate.weavemark.md +34 -0
- weavemark-0.8.0/promplets/stdlib/fragments/lenses/explainability.weavemark.md +28 -0
- weavemark-0.8.0/promplets/stdlib/fragments/reasoning/action-planning.weavemark.md +37 -0
- weavemark-0.8.0/promplets/stdlib/fragments/reasoning/base-analyst.weavemark.md +24 -0
- weavemark-0.8.0/promplets/stdlib/fragments/reasoning/chain-of-thought.weavemark.md +37 -0
- weavemark-0.8.0/promplets/stdlib/fragments/reasoning/deep-summary.weavemark.md +37 -0
- weavemark-0.8.0/promplets/stdlib/fragments/reasoning/learner-model.weavemark.md +37 -0
- weavemark-0.8.0/promplets/stdlib/fragments/reasoning/prompt-refinement-core.weavemark.md +37 -0
- weavemark-0.8.0/promplets/stdlib/fragments/reasoning/unstructured-input-normalization.weavemark.md +44 -0
- weavemark-0.8.0/promplets/stdlib/fragments/strategy/indirect-strategy-principles.weavemark.md +90 -0
- weavemark-0.8.0/promplets/stdlib/fragments/teaching/mastery-practice-loop.weavemark.md +34 -0
- weavemark-0.8.0/promplets/stdlib/fragments/teaching/misconception-diagnosis.weavemark.md +34 -0
- weavemark-0.8.0/promplets/stdlib/fragments/teaching/socratic-tutoring.weavemark.md +36 -0
- weavemark-0.8.0/promplets/stdlib/fragments/writing/collaborative-writing-protocol.weavemark.md +35 -0
- weavemark-0.8.0/promplets/stdlib/fragments/writing/revision-critique-loop.weavemark.md +35 -0
- weavemark-0.8.0/promplets/stdlib/prelude/presentation.weavemark.md +33 -0
- weavemark-0.8.0/promplets/stdlib/prelude/semantics.weavemark.md +491 -0
- weavemark-0.8.0/promplets/tutorials/README.md +24 -0
- weavemark-0.8.0/promplets/tutorials/adaptive-tutor-guided.weavemark.md +40 -0
- weavemark-0.8.0/promplets/tutorials/adaptive-tutor.weavemark.md +36 -0
- weavemark-0.8.0/promplets/tutorials/metro-lines-pack.weavemark.md +53 -0
- weavemark-0.8.0/promplets/tutorials/metro-lines.weavemark.md +35 -0
- weavemark-0.8.0/promplets/tutorials/release-workbench-pack.weavemark.md +53 -0
- weavemark-0.8.0/promplets/tutorials/release-workbench.weavemark.md +42 -0
- weavemark-0.8.0/pyproject.toml +119 -0
- weavemark-0.8.0/src/weavemark/__init__.py +85 -0
- weavemark-0.8.0/src/weavemark/api.py +459 -0
- weavemark-0.8.0/src/weavemark/app.py +2395 -0
- weavemark-0.8.0/src/weavemark/cli_inputs.py +245 -0
- weavemark-0.8.0/src/weavemark/compilation/__init__.py +8 -0
- weavemark-0.8.0/src/weavemark/compilation/args.py +150 -0
- weavemark-0.8.0/src/weavemark/compilation/ask.py +252 -0
- weavemark-0.8.0/src/weavemark/compilation/diagnostics.py +133 -0
- weavemark-0.8.0/src/weavemark/compilation/directive_registry.py +94 -0
- weavemark-0.8.0/src/weavemark/compilation/fslm_sugar.py +645 -0
- weavemark-0.8.0/src/weavemark/compilation/iterate.py +518 -0
- weavemark-0.8.0/src/weavemark/compilation/macros.py +1296 -0
- weavemark-0.8.0/src/weavemark/compilation/multimodal.py +235 -0
- weavemark-0.8.0/src/weavemark/compilation/prompt_header.py +177 -0
- weavemark-0.8.0/src/weavemark/compilation/provenance.py +999 -0
- weavemark-0.8.0/src/weavemark/compilation/result.py +134 -0
- weavemark-0.8.0/src/weavemark/compilation/result_schema.py +192 -0
- weavemark-0.8.0/src/weavemark/compilation/state.py +256 -0
- weavemark-0.8.0/src/weavemark/compilation/structural.py +2244 -0
- weavemark-0.8.0/src/weavemark/compilation/trace.py +211 -0
- weavemark-0.8.0/src/weavemark/compile_options.py +44 -0
- weavemark-0.8.0/src/weavemark/controller.py +2203 -0
- weavemark-0.8.0/src/weavemark/defaults.py +10 -0
- weavemark-0.8.0/src/weavemark/discovery/__init__.py +1 -0
- weavemark-0.8.0/src/weavemark/discovery/catalog.py +115 -0
- weavemark-0.8.0/src/weavemark/discovery/chat_ui.py +193 -0
- weavemark-0.8.0/src/weavemark/discovery/config.py +146 -0
- weavemark-0.8.0/src/weavemark/discovery/metadata.py +208 -0
- weavemark-0.8.0/src/weavemark/discovery/tools.py +277 -0
- weavemark-0.8.0/src/weavemark/engines/__init__.py +48 -0
- weavemark-0.8.0/src/weavemark/engines/base.py +569 -0
- weavemark-0.8.0/src/weavemark/engines/chain.py +270 -0
- weavemark-0.8.0/src/weavemark/engines/chat.py +126 -0
- weavemark-0.8.0/src/weavemark/engines/collaborative.py +253 -0
- weavemark-0.8.0/src/weavemark/engines/fslm.py +1298 -0
- weavemark-0.8.0/src/weavemark/engines/reflection.py +464 -0
- weavemark-0.8.0/src/weavemark/engines/registry.py +93 -0
- weavemark-0.8.0/src/weavemark/engines/self_consistency.py +31 -0
- weavemark-0.8.0/src/weavemark/engines/single_call.py +185 -0
- weavemark-0.8.0/src/weavemark/engines/tree_of_thought.py +68 -0
- weavemark-0.8.0/src/weavemark/engines/weave.py +43 -0
- weavemark-0.8.0/src/weavemark/exceptions.py +17 -0
- weavemark-0.8.0/src/weavemark/fragments.py +187 -0
- weavemark-0.8.0/src/weavemark/implementation.py +877 -0
- weavemark-0.8.0/src/weavemark/library_cli.py +275 -0
- weavemark-0.8.0/src/weavemark/logging_policy.py +351 -0
- weavemark-0.8.0/src/weavemark/logging_setup.py +335 -0
- weavemark-0.8.0/src/weavemark/packaging/__init__.py +27 -0
- weavemark-0.8.0/src/weavemark/packaging/convert.py +61 -0
- weavemark-0.8.0/src/weavemark/packaging/persist.py +135 -0
- weavemark-0.8.0/src/weavemark/packaging/runner.py +228 -0
- weavemark-0.8.0/src/weavemark/promplet_library.py +487 -0
- weavemark-0.8.0/src/weavemark/prompts/weavemark.system.md +2117 -0
- weavemark-0.8.0/src/weavemark/protection.py +1044 -0
- weavemark-0.8.0/src/weavemark/settings.py +623 -0
- weavemark-0.8.0/src/weavemark/surfaces/__init__.py +39 -0
- weavemark-0.8.0/src/weavemark/surfaces/base.py +185 -0
- weavemark-0.8.0/src/weavemark/surfaces/markdown_adapter.py +350 -0
- weavemark-0.8.0/src/weavemark/traces.py +151 -0
- weavemark-0.8.0/src/weavemark/tui/__init__.py +1 -0
- weavemark-0.8.0/src/weavemark/tui/app.py +421 -0
- weavemark-0.8.0/src/weavemark/tui/callbacks.py +100 -0
- weavemark-0.8.0/src/weavemark/tui/scanner.py +590 -0
- weavemark-0.8.0/src/weavemark/tui/screens/__init__.py +1 -0
- weavemark-0.8.0/src/weavemark/tui/screens/ask.py +119 -0
- weavemark-0.8.0/src/weavemark/tui/screens/edit.py +254 -0
- weavemark-0.8.0/src/weavemark/tui/screens/input.py +130 -0
- weavemark-0.8.0/src/weavemark/tui/theme.tcss +232 -0
- weavemark-0.8.0/src/weavemark/tui/widgets/__init__.py +1 -0
- weavemark-0.8.0/src/weavemark/tui/widgets/preview.py +53 -0
- weavemark-0.8.0/src/weavemark/tui/widgets/spec_info.py +73 -0
- weavemark-0.8.0/src/weavemark/tui/widgets/step_log.py +46 -0
- weavemark-0.8.0/src/weavemark/variable_paths.py +55 -0
- weavemark-0.8.0/src/weavemark/version.py +16 -0
- weavemark-0.8.0/studies/AGENTS.md +358 -0
- weavemark-0.8.0/studies/README.md +39 -0
- weavemark-0.8.0/studies/controlled-studies/README.md +53 -0
- weavemark-0.8.0/studies/controlled-studies/evidence-decision-workspace-ablation-study/README.md +37 -0
- weavemark-0.8.0/studies/controlled-studies/evidence-decision-workspace-ablation-study/inputs/promplet-vars.json +5 -0
- weavemark-0.8.0/studies/controlled-studies/evidence-decision-workspace-ablation-study/inputs/template-vars.json +7 -0
- weavemark-0.8.0/studies/controlled-studies/evidence-decision-workspace-ablation-study/outputs/compiled-prompts/00-control-manual-evidence-decision-workspace.md +9 -0
- weavemark-0.8.0/studies/controlled-studies/evidence-decision-workspace-ablation-study/outputs/compiled-prompts/01-control-template-evidence-decision-workspace.md +152 -0
- weavemark-0.8.0/studies/controlled-studies/evidence-decision-workspace-ablation-study/outputs/compiled-prompts/02-treatment-promplet-evidence-decision-workspace.md +1675 -0
- weavemark-0.8.0/studies/controlled-studies/evidence-decision-workspace-ablation-study/results/ablation-summary.html +449 -0
- weavemark-0.8.0/studies/controlled-studies/evidence-decision-workspace-ablation-study/results/ablation-summary.md +91 -0
- weavemark-0.8.0/studies/controlled-studies/evidence-decision-workspace-ablation-study/results/final-quality-analysis.html +455 -0
- weavemark-0.8.0/studies/controlled-studies/evidence-decision-workspace-ablation-study/results/final-quality-analysis.md +86 -0
- weavemark-0.8.0/studies/controlled-studies/evidence-decision-workspace-ablation-study/specs/00-control-manual-evidence-decision-workspace.weavemark.md +9 -0
- weavemark-0.8.0/studies/controlled-studies/evidence-decision-workspace-ablation-study/specs/01-control-template-evidence-decision-workspace.weavemark.md +24 -0
- weavemark-0.8.0/studies/controlled-studies/evidence-decision-workspace-ablation-study/specs/02-treatment-promplet-evidence-decision-workspace.weavemark.md +73 -0
- weavemark-0.8.0/studies/controlled-studies/games/crowd-factory-puzzle-ablation-study/README.md +26 -0
- weavemark-0.8.0/studies/controlled-studies/games/crowd-factory-puzzle-ablation-study/outputs/compiled-prompts/00-control-compact-no-expand-crowd-factory-puzzle.md +104 -0
- weavemark-0.8.0/studies/controlled-studies/games/crowd-factory-puzzle-ablation-study/outputs/compiled-prompts/01-control-matched-prose-no-expand-crowd-factory-puzzle.md +116 -0
- weavemark-0.8.0/studies/controlled-studies/games/crowd-factory-puzzle-ablation-study/outputs/compiled-prompts/02-treatment-expand-crowd-factory-puzzle.md +486 -0
- weavemark-0.8.0/studies/controlled-studies/games/crowd-factory-puzzle-ablation-study/results/ablation-summary.html +449 -0
- weavemark-0.8.0/studies/controlled-studies/games/crowd-factory-puzzle-ablation-study/results/ablation-summary.md +90 -0
- weavemark-0.8.0/studies/controlled-studies/games/crowd-factory-puzzle-ablation-study/results/final-quality-analysis.html +453 -0
- weavemark-0.8.0/studies/controlled-studies/games/crowd-factory-puzzle-ablation-study/results/final-quality-analysis.md +83 -0
- weavemark-0.8.0/studies/controlled-studies/games/crowd-factory-puzzle-ablation-study/specs/00-control-compact-no-expand-crowd-factory-puzzle.weavemark.md +17 -0
- weavemark-0.8.0/studies/controlled-studies/games/crowd-factory-puzzle-ablation-study/specs/01-control-matched-prose-no-expand-crowd-factory-puzzle.weavemark.md +30 -0
- weavemark-0.8.0/studies/controlled-studies/games/crowd-factory-puzzle-ablation-study/specs/02-treatment-expand-crowd-factory-puzzle.weavemark.md +36 -0
- weavemark-0.8.0/studies/controlled-studies/games/orbital-drift-racing-ablation-study/README.md +36 -0
- weavemark-0.8.0/studies/controlled-studies/games/orbital-drift-racing-ablation-study/inputs/template-vars.json +5 -0
- weavemark-0.8.0/studies/controlled-studies/games/orbital-drift-racing-ablation-study/outputs/compiled-prompts/00-control-manual-orbital-drift.md +8 -0
- weavemark-0.8.0/studies/controlled-studies/games/orbital-drift-racing-ablation-study/outputs/compiled-prompts/01-control-template-orbital-drift.md +91 -0
- weavemark-0.8.0/studies/controlled-studies/games/orbital-drift-racing-ablation-study/outputs/compiled-prompts/02-treatment-promplet-orbital-drift.md +507 -0
- weavemark-0.8.0/studies/controlled-studies/games/orbital-drift-racing-ablation-study/results/ablation-summary.html +449 -0
- weavemark-0.8.0/studies/controlled-studies/games/orbital-drift-racing-ablation-study/results/ablation-summary.md +91 -0
- weavemark-0.8.0/studies/controlled-studies/games/orbital-drift-racing-ablation-study/results/final-quality-analysis.html +453 -0
- weavemark-0.8.0/studies/controlled-studies/games/orbital-drift-racing-ablation-study/results/final-quality-analysis.md +84 -0
- weavemark-0.8.0/studies/controlled-studies/games/orbital-drift-racing-ablation-study/specs/00-control-manual-orbital-drift.weavemark.md +8 -0
- weavemark-0.8.0/studies/controlled-studies/games/orbital-drift-racing-ablation-study/specs/01-control-template-orbital-drift.weavemark.md +19 -0
- weavemark-0.8.0/studies/controlled-studies/games/orbital-drift-racing-ablation-study/specs/02-treatment-promplet-orbital-drift.weavemark.md +34 -0
- weavemark-0.8.0/studies/controlled-studies/games/transit-city-swarm-ablation-study/README.md +26 -0
- weavemark-0.8.0/studies/controlled-studies/games/transit-city-swarm-ablation-study/outputs/compiled-prompts/00-control-compact-no-expand-transit-city-swarm.md +108 -0
- weavemark-0.8.0/studies/controlled-studies/games/transit-city-swarm-ablation-study/outputs/compiled-prompts/01-control-matched-prose-no-expand-transit-city-swarm.md +147 -0
- weavemark-0.8.0/studies/controlled-studies/games/transit-city-swarm-ablation-study/outputs/compiled-prompts/02-treatment-expand-transit-city-swarm.md +473 -0
- weavemark-0.8.0/studies/controlled-studies/games/transit-city-swarm-ablation-study/results/ablation-summary.html +449 -0
- weavemark-0.8.0/studies/controlled-studies/games/transit-city-swarm-ablation-study/results/ablation-summary.md +90 -0
- weavemark-0.8.0/studies/controlled-studies/games/transit-city-swarm-ablation-study/results/final-quality-analysis.html +452 -0
- weavemark-0.8.0/studies/controlled-studies/games/transit-city-swarm-ablation-study/results/final-quality-analysis.md +82 -0
- weavemark-0.8.0/studies/controlled-studies/games/transit-city-swarm-ablation-study/specs/00-control-compact-no-expand-transit-city-swarm.weavemark.md +17 -0
- weavemark-0.8.0/studies/controlled-studies/games/transit-city-swarm-ablation-study/specs/01-control-matched-prose-no-expand-transit-city-swarm.weavemark.md +30 -0
- weavemark-0.8.0/studies/controlled-studies/games/transit-city-swarm-ablation-study/specs/02-treatment-expand-transit-city-swarm.weavemark.md +32 -0
- weavemark-0.8.0/studies/controlled-studies/games/verdant-relay-ablation-study/README.md +48 -0
- weavemark-0.8.0/studies/controlled-studies/games/verdant-relay-ablation-study/inputs/promplet-vars.json +3 -0
- weavemark-0.8.0/studies/controlled-studies/games/verdant-relay-ablation-study/inputs/template-vars.json +5 -0
- weavemark-0.8.0/studies/controlled-studies/games/verdant-relay-ablation-study/outputs/compiled-prompts/00-control-compact-manual-verdant-relay.md +10 -0
- weavemark-0.8.0/studies/controlled-studies/games/verdant-relay-ablation-study/outputs/compiled-prompts/01-control-template-verdant-relay.md +139 -0
- weavemark-0.8.0/studies/controlled-studies/games/verdant-relay-ablation-study/outputs/compiled-prompts/02-treatment-promplet-verdant-relay.md +665 -0
- weavemark-0.8.0/studies/controlled-studies/games/verdant-relay-ablation-study/results/ablation-summary.html +449 -0
- weavemark-0.8.0/studies/controlled-studies/games/verdant-relay-ablation-study/results/ablation-summary.md +91 -0
- weavemark-0.8.0/studies/controlled-studies/games/verdant-relay-ablation-study/results/final-quality-analysis.html +457 -0
- weavemark-0.8.0/studies/controlled-studies/games/verdant-relay-ablation-study/results/final-quality-analysis.md +88 -0
- weavemark-0.8.0/studies/controlled-studies/games/verdant-relay-ablation-study/specs/00-control-compact-manual-verdant-relay.weavemark.md +10 -0
- weavemark-0.8.0/studies/controlled-studies/games/verdant-relay-ablation-study/specs/01-control-template-verdant-relay.weavemark.md +31 -0
- weavemark-0.8.0/studies/controlled-studies/games/verdant-relay-ablation-study/specs/02-treatment-promplet-verdant-relay.weavemark.md +71 -0
- weavemark-0.8.0/studies/controlled-studies/intelligence-execution-kanban-ablation-study/README.md +64 -0
- weavemark-0.8.0/studies/controlled-studies/intelligence-execution-kanban-ablation-study/inputs/promplet-vars.json +4 -0
- weavemark-0.8.0/studies/controlled-studies/intelligence-execution-kanban-ablation-study/inputs/template-vars.json +6 -0
- weavemark-0.8.0/studies/controlled-studies/intelligence-execution-kanban-ablation-study/outputs/compiled-prompts/00-control-manual-intelligence-execution-kanban.md +10 -0
- weavemark-0.8.0/studies/controlled-studies/intelligence-execution-kanban-ablation-study/outputs/compiled-prompts/01-control-template-intelligence-execution-kanban.md +149 -0
- weavemark-0.8.0/studies/controlled-studies/intelligence-execution-kanban-ablation-study/outputs/compiled-prompts/02-treatment-promplet-intelligence-execution-kanban.md +384 -0
- weavemark-0.8.0/studies/controlled-studies/intelligence-execution-kanban-ablation-study/results/ablation-summary.html +449 -0
- weavemark-0.8.0/studies/controlled-studies/intelligence-execution-kanban-ablation-study/results/ablation-summary.md +91 -0
- weavemark-0.8.0/studies/controlled-studies/intelligence-execution-kanban-ablation-study/results/final-quality-analysis.html +456 -0
- weavemark-0.8.0/studies/controlled-studies/intelligence-execution-kanban-ablation-study/results/final-quality-analysis.md +87 -0
- weavemark-0.8.0/studies/controlled-studies/intelligence-execution-kanban-ablation-study/specs/00-control-manual-intelligence-execution-kanban.weavemark.md +10 -0
- weavemark-0.8.0/studies/controlled-studies/intelligence-execution-kanban-ablation-study/specs/01-control-template-intelligence-execution-kanban.weavemark.md +24 -0
- weavemark-0.8.0/studies/controlled-studies/intelligence-execution-kanban-ablation-study/specs/02-treatment-promplet-intelligence-execution-kanban.weavemark.md +41 -0
- weavemark-0.8.0/studies/controlled-studies/learning-tutor-refinement-ablation-study/README.md +27 -0
- weavemark-0.8.0/studies/controlled-studies/learning-tutor-refinement-ablation-study/inputs/treatment-vars.json +4 -0
- weavemark-0.8.0/studies/controlled-studies/learning-tutor-refinement-ablation-study/outputs/compiled-prompts/00-control-compact-manual-linear-algebra-tutor.md +5 -0
- weavemark-0.8.0/studies/controlled-studies/learning-tutor-refinement-ablation-study/outputs/compiled-prompts/01-control-matched-prose-linear-algebra-tutor.md +35 -0
- weavemark-0.8.0/studies/controlled-studies/learning-tutor-refinement-ablation-study/outputs/compiled-prompts/02-treatment-refined-expand-linear-algebra-tutor.md +279 -0
- weavemark-0.8.0/studies/controlled-studies/learning-tutor-refinement-ablation-study/results/ablation-summary.html +449 -0
- weavemark-0.8.0/studies/controlled-studies/learning-tutor-refinement-ablation-study/results/ablation-summary.md +91 -0
- weavemark-0.8.0/studies/controlled-studies/learning-tutor-refinement-ablation-study/results/final-quality-analysis.html +453 -0
- weavemark-0.8.0/studies/controlled-studies/learning-tutor-refinement-ablation-study/results/final-quality-analysis.md +84 -0
- weavemark-0.8.0/studies/controlled-studies/learning-tutor-refinement-ablation-study/specs/00-control-compact-manual-linear-algebra-tutor.weavemark.md +5 -0
- weavemark-0.8.0/studies/controlled-studies/learning-tutor-refinement-ablation-study/specs/01-control-matched-prose-linear-algebra-tutor.weavemark.md +35 -0
- weavemark-0.8.0/studies/controlled-studies/learning-tutor-refinement-ablation-study/specs/02-treatment-refined-expand-linear-algebra-tutor.weavemark.md +35 -0
- weavemark-0.8.0/studies/controlled-studies/method.md +262 -0
- weavemark-0.8.0/studies/controlled-studies/metrics/semantic-information.json +353 -0
- weavemark-0.8.0/studies/controlled-studies/release-readiness-workbench-ablation-study/README.md +42 -0
- weavemark-0.8.0/studies/controlled-studies/release-readiness-workbench-ablation-study/inputs/promplet-vars.json +4 -0
- weavemark-0.8.0/studies/controlled-studies/release-readiness-workbench-ablation-study/inputs/template-vars.json +6 -0
- weavemark-0.8.0/studies/controlled-studies/release-readiness-workbench-ablation-study/outputs/compiled-prompts/00-control-manual-release-readiness-workbench.md +9 -0
- weavemark-0.8.0/studies/controlled-studies/release-readiness-workbench-ablation-study/outputs/compiled-prompts/01-control-template-release-readiness-workbench.md +151 -0
- weavemark-0.8.0/studies/controlled-studies/release-readiness-workbench-ablation-study/outputs/compiled-prompts/02-treatment-promplet-release-readiness-workbench.md +575 -0
- weavemark-0.8.0/studies/controlled-studies/release-readiness-workbench-ablation-study/results/ablation-summary.html +449 -0
- weavemark-0.8.0/studies/controlled-studies/release-readiness-workbench-ablation-study/results/ablation-summary.md +91 -0
- weavemark-0.8.0/studies/controlled-studies/release-readiness-workbench-ablation-study/results/final-quality-analysis.html +454 -0
- weavemark-0.8.0/studies/controlled-studies/release-readiness-workbench-ablation-study/results/final-quality-analysis.md +85 -0
- weavemark-0.8.0/studies/controlled-studies/release-readiness-workbench-ablation-study/specs/00-control-manual-release-readiness-workbench.weavemark.md +9 -0
- weavemark-0.8.0/studies/controlled-studies/release-readiness-workbench-ablation-study/specs/01-control-template-release-readiness-workbench.weavemark.md +24 -0
- weavemark-0.8.0/studies/controlled-studies/release-readiness-workbench-ablation-study/specs/02-treatment-promplet-release-readiness-workbench.weavemark.md +70 -0
- weavemark-0.8.0/studies/controlled-studies/research-brief-ablation-study/README.md +36 -0
- weavemark-0.8.0/studies/controlled-studies/research-brief-ablation-study/inputs/energy-storage.json +10 -0
- weavemark-0.8.0/studies/controlled-studies/research-brief-ablation-study/inputs/template-vars.json +6 -0
- weavemark-0.8.0/studies/controlled-studies/research-brief-ablation-study/outputs/compiled-prompts/00-control-manual-research-brief.md +7 -0
- weavemark-0.8.0/studies/controlled-studies/research-brief-ablation-study/outputs/compiled-prompts/01-control-template-research-brief.md +37 -0
- weavemark-0.8.0/studies/controlled-studies/research-brief-ablation-study/outputs/compiled-prompts/02-treatment-refined-research-brief.md +227 -0
- weavemark-0.8.0/studies/controlled-studies/research-brief-ablation-study/results/ablation-summary.html +449 -0
- weavemark-0.8.0/studies/controlled-studies/research-brief-ablation-study/results/ablation-summary.md +91 -0
- weavemark-0.8.0/studies/controlled-studies/research-brief-ablation-study/results/final-quality-analysis.html +451 -0
- weavemark-0.8.0/studies/controlled-studies/research-brief-ablation-study/results/final-quality-analysis.md +82 -0
- weavemark-0.8.0/studies/controlled-studies/research-brief-ablation-study/specs/00-control-manual-research-brief.weavemark.md +7 -0
- weavemark-0.8.0/studies/controlled-studies/research-brief-ablation-study/specs/01-control-template-research-brief.weavemark.md +10 -0
- weavemark-0.8.0/studies/controlled-studies/research-brief-ablation-study/specs/02-treatment-refined-research-brief.weavemark.md +62 -0
- weavemark-0.8.0/studies/controlled-studies/results.html +452 -0
- weavemark-0.8.0/studies/controlled-studies/results.md +211 -0
- weavemark-0.8.0/studies/controlled-studies/template-library/README.md +24 -0
- weavemark-0.8.0/studies/controlled-studies/template-library/partials/common/implementation-spec.md +13 -0
- weavemark-0.8.0/studies/controlled-studies/template-library/partials/domains/evidence-decision.md +27 -0
- weavemark-0.8.0/studies/controlled-studies/template-library/partials/domains/local-ai-kanban.md +21 -0
- weavemark-0.8.0/studies/controlled-studies/template-library/partials/domains/release-readiness.md +26 -0
- weavemark-0.8.0/studies/controlled-studies/template-library/partials/domains/work-intelligence.md +24 -0
- weavemark-0.8.0/studies/controlled-studies/template-library/partials/game/browser-game-foundation.md +15 -0
- weavemark-0.8.0/studies/controlled-studies/template-library/partials/game/deckbuilder.md +12 -0
- weavemark-0.8.0/studies/controlled-studies/template-library/partials/game/ecosystem-simulation.md +13 -0
- weavemark-0.8.0/studies/controlled-studies/template-library/partials/game/playability-progression.md +15 -0
- weavemark-0.8.0/studies/controlled-studies/template-library/partials/game/racing-game.md +18 -0
- weavemark-0.8.0/studies/controlled-studies/template-library/partials/game/sprite-assets.md +12 -0
- weavemark-0.8.0/studies/controlled-studies/template-library/partials/game/tower-defense.md +14 -0
- weavemark-0.8.0/studies/controlled-studies/template-library/partials/programming/browser-validation.md +14 -0
- weavemark-0.8.0/studies/controlled-studies/template-library/partials/programming/local-first-nextjs-sqlite.md +20 -0
- weavemark-0.8.0/studies/controlled-studies/template-library/partials/programming/workspace-modules.md +54 -0
- weavemark-0.8.0/studies/controlled-studies/template-library/partials/research/research-brief.md +27 -0
- weavemark-0.8.0/studies/controlled-studies/template-library/render.py +73 -0
- weavemark-0.8.0/studies/examples-studies/README.md +27 -0
- weavemark-0.8.0/studies/examples-studies/decision-advisor/results.html +443 -0
- weavemark-0.8.0/studies/examples-studies/decision-advisor/results.md +23 -0
- weavemark-0.8.0/studies/examples-studies/deep-summary/results.html +443 -0
- weavemark-0.8.0/studies/examples-studies/deep-summary/results.md +23 -0
- weavemark-0.8.0/studies/examples-studies/investment-brief/results.html +443 -0
- weavemark-0.8.0/studies/examples-studies/investment-brief/results.md +23 -0
- weavemark-0.8.0/studies/examples-studies/learning-tutor/results.html +443 -0
- weavemark-0.8.0/studies/examples-studies/learning-tutor/results.md +23 -0
- weavemark-0.8.0/studies/examples-studies/messy-notes-action-plan/results.html +443 -0
- weavemark-0.8.0/studies/examples-studies/messy-notes-action-plan/results.md +23 -0
- weavemark-0.8.0/studies/examples-studies/metrics/example-quality.json +398 -0
- weavemark-0.8.0/studies/examples-studies/program-debugging-assistant/results.html +443 -0
- weavemark-0.8.0/studies/examples-studies/program-debugging-assistant/results.md +23 -0
- weavemark-0.8.0/studies/examples-studies/program-review-checklist/results.html +443 -0
- weavemark-0.8.0/studies/examples-studies/program-review-checklist/results.md +23 -0
- weavemark-0.8.0/studies/examples-studies/prompt-refiner/results.html +443 -0
- weavemark-0.8.0/studies/examples-studies/prompt-refiner/results.md +23 -0
- weavemark-0.8.0/studies/examples-studies/research-brief/results.html +443 -0
- weavemark-0.8.0/studies/examples-studies/research-brief/results.md +23 -0
- weavemark-0.8.0/studies/examples-studies/results.html +445 -0
- weavemark-0.8.0/studies/examples-studies/results.md +166 -0
- weavemark-0.8.0/studies/tools/blind_analysis.py +1127 -0
- weavemark-0.8.0/studies/tools/regenerate_example_studies.py +572 -0
- weavemark-0.8.0/studies/tools/regenerate_reports.py +3050 -0
- weavemark-0.8.0/studies/tools/semantic_information.py +488 -0
- weavemark-0.8.0/tests/__init__.py +0 -0
- weavemark-0.8.0/tests/test_app_logging.py +216 -0
- weavemark-0.8.0/tests/test_ask_directive.py +276 -0
- weavemark-0.8.0/tests/test_async_cleanup.py +349 -0
- weavemark-0.8.0/tests/test_chain_image_context.py +98 -0
- weavemark-0.8.0/tests/test_cli_ask.py +46 -0
- weavemark-0.8.0/tests/test_compilation_state.py +216 -0
- weavemark-0.8.0/tests/test_core_tool_calling.py +252 -0
- weavemark-0.8.0/tests/test_diagnostics.py +106 -0
- weavemark-0.8.0/tests/test_directive_semantics_llm.py +383 -0
- weavemark-0.8.0/tests/test_directive_validation.py +124 -0
- weavemark-0.8.0/tests/test_discovery_catalog.py +152 -0
- weavemark-0.8.0/tests/test_discovery_config.py +156 -0
- weavemark-0.8.0/tests/test_discovery_metadata.py +206 -0
- weavemark-0.8.0/tests/test_dotted_paths.py +147 -0
- weavemark-0.8.0/tests/test_engines.py +912 -0
- weavemark-0.8.0/tests/test_fslm_dependency.py +29 -0
- weavemark-0.8.0/tests/test_fslm_engine.py +693 -0
- weavemark-0.8.0/tests/test_grammar_sync.py +632 -0
- weavemark-0.8.0/tests/test_implementation.py +258 -0
- weavemark-0.8.0/tests/test_iterate_directive.py +442 -0
- weavemark-0.8.0/tests/test_live_module_refinement.py +136 -0
- weavemark-0.8.0/tests/test_logging_policy.py +122 -0
- weavemark-0.8.0/tests/test_logging_setup.py +213 -0
- weavemark-0.8.0/tests/test_multimodal.py +758 -0
- weavemark-0.8.0/tests/test_packaging.py +300 -0
- weavemark-0.8.0/tests/test_promplet_library.py +388 -0
- weavemark-0.8.0/tests/test_protection.py +280 -0
- weavemark-0.8.0/tests/test_protection_cli.py +89 -0
- weavemark-0.8.0/tests/test_provenance.py +210 -0
- weavemark-0.8.0/tests/test_public_api.py +189 -0
- weavemark-0.8.0/tests/test_public_claims.py +57 -0
- weavemark-0.8.0/tests/test_reference_authority.py +51 -0
- weavemark-0.8.0/tests/test_reference_compilation.py +2831 -0
- weavemark-0.8.0/tests/test_repository_hygiene.py +107 -0
- weavemark-0.8.0/tests/test_result_schema.py +179 -0
- weavemark-0.8.0/tests/test_root_cascading.py +211 -0
- weavemark-0.8.0/tests/test_runtime_settings.py +309 -0
- weavemark-0.8.0/tests/test_streaming_artifacts.py +138 -0
- weavemark-0.8.0/tests/test_studies.py +443 -0
- weavemark-0.8.0/tests/test_surface_markdown.py +320 -0
- weavemark-0.8.0/tests/test_tui_ask.py +73 -0
- weavemark-0.8.0/tests/test_tui_edit.py +454 -0
- weavemark-0.8.0/tests/test_tui_pilot.py +1035 -0
- weavemark-0.8.0/tests/test_tui_scanner.py +516 -0
- weavemark-0.8.0/tests/test_weavemark.py +3139 -0
- weavemark-0.8.0/tests/test_weavemark_directives.py +843 -0
- weavemark-0.8.0/tests/test_weavemark_tools.py +328 -0
- weavemark-0.8.0/tests/wire_helpers.py +63 -0
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# Python
|
|
2
|
+
__pycache__/
|
|
3
|
+
*.py[cod]
|
|
4
|
+
*$py.class
|
|
5
|
+
*.so
|
|
6
|
+
*.egg-info/
|
|
7
|
+
*.egg
|
|
8
|
+
dist/
|
|
9
|
+
build/
|
|
10
|
+
*.whl
|
|
11
|
+
*.tar.gz
|
|
12
|
+
*.zip
|
|
13
|
+
|
|
14
|
+
# Virtual environments
|
|
15
|
+
.venv/
|
|
16
|
+
venv/
|
|
17
|
+
ENV/
|
|
18
|
+
|
|
19
|
+
# IDE
|
|
20
|
+
.idea/
|
|
21
|
+
.vscode/
|
|
22
|
+
*.swp
|
|
23
|
+
*.swo
|
|
24
|
+
*~
|
|
25
|
+
|
|
26
|
+
# Testing
|
|
27
|
+
.pytest_cache/
|
|
28
|
+
.ruff_cache/
|
|
29
|
+
.coverage
|
|
30
|
+
coverage.xml
|
|
31
|
+
htmlcov/
|
|
32
|
+
.mypy_cache/
|
|
33
|
+
.tox/
|
|
34
|
+
.nox/
|
|
35
|
+
.hypothesis/
|
|
36
|
+
|
|
37
|
+
# JavaScript / editor build artifacts
|
|
38
|
+
node_modules/
|
|
39
|
+
.next/
|
|
40
|
+
*.tsbuildinfo
|
|
41
|
+
*.vsix
|
|
42
|
+
|
|
43
|
+
# OS
|
|
44
|
+
.DS_Store
|
|
45
|
+
Thumbs.db
|
|
46
|
+
|
|
47
|
+
# Environment
|
|
48
|
+
.env
|
|
49
|
+
.env.local
|
|
50
|
+
|
|
51
|
+
# Generated implementation/example internals
|
|
52
|
+
coverage/
|
|
53
|
+
playwright-report/
|
|
54
|
+
test-results/
|
weavemark-0.8.0/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Paulo Salem
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
weavemark-0.8.0/PKG-INFO
ADDED
|
@@ -0,0 +1,511 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: weavemark
|
|
3
|
+
Version: 0.8.0
|
|
4
|
+
Summary: An LLM-powered prompt composition system with directives and variables
|
|
5
|
+
Project-URL: Homepage, https://github.com/paulosalem/weavemark
|
|
6
|
+
Project-URL: Repository, https://github.com/paulosalem/weavemark
|
|
7
|
+
Project-URL: Bug Tracker, https://github.com/paulosalem/weavemark/issues
|
|
8
|
+
Author-email: Paulo Salem <paulosalem@paulosalem.com>
|
|
9
|
+
License-Expression: MIT
|
|
10
|
+
License-File: LICENSE
|
|
11
|
+
Keywords: ai,directives,llm,prompt-composition,prompt-engineering,prompting,templates
|
|
12
|
+
Classifier: Development Status :: 3 - Alpha
|
|
13
|
+
Classifier: Intended Audience :: Developers
|
|
14
|
+
Classifier: Programming Language :: Python :: 3
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
18
|
+
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
|
|
19
|
+
Requires-Python: >=3.11
|
|
20
|
+
Requires-Dist: ellements[cli,execution,fslm]<0.3,>=0.2.0
|
|
21
|
+
Requires-Dist: litellm<2,>=1.0.0
|
|
22
|
+
Requires-Dist: pydantic<3,>=2.0.0
|
|
23
|
+
Requires-Dist: pyyaml<7,>=6.0.0
|
|
24
|
+
Requires-Dist: rich<15,>=13.0.0
|
|
25
|
+
Requires-Dist: typing-extensions<5,>=4.8.0
|
|
26
|
+
Provides-Extra: all
|
|
27
|
+
Requires-Dist: black<27,>=23.0.0; extra == 'all'
|
|
28
|
+
Requires-Dist: ellements[benchmarking]<0.3,>=0.2.0; extra == 'all'
|
|
29
|
+
Requires-Dist: ellements[finance,web]<0.3,>=0.2.0; extra == 'all'
|
|
30
|
+
Requires-Dist: markitdown<0.2,>=0.1.0; extra == 'all'
|
|
31
|
+
Requires-Dist: mypy<2,>=1.7.0; extra == 'all'
|
|
32
|
+
Requires-Dist: pytest-asyncio<2,>=0.21.0; extra == 'all'
|
|
33
|
+
Requires-Dist: pytest<9,>=7.0.0; extra == 'all'
|
|
34
|
+
Requires-Dist: ruff<1,>=0.1.0; extra == 'all'
|
|
35
|
+
Requires-Dist: textual<7,>=0.40.0; extra == 'all'
|
|
36
|
+
Provides-Extra: benchmarking
|
|
37
|
+
Requires-Dist: ellements[benchmarking]<0.3,>=0.2.0; extra == 'benchmarking'
|
|
38
|
+
Provides-Extra: convert
|
|
39
|
+
Requires-Dist: markitdown<0.2,>=0.1.0; extra == 'convert'
|
|
40
|
+
Provides-Extra: dev
|
|
41
|
+
Requires-Dist: black<27,>=23.0.0; extra == 'dev'
|
|
42
|
+
Requires-Dist: mypy<2,>=1.7.0; extra == 'dev'
|
|
43
|
+
Requires-Dist: pytest-asyncio<2,>=0.21.0; extra == 'dev'
|
|
44
|
+
Requires-Dist: pytest<9,>=7.0.0; extra == 'dev'
|
|
45
|
+
Requires-Dist: ruff<1,>=0.1.0; extra == 'dev'
|
|
46
|
+
Provides-Extra: examples
|
|
47
|
+
Requires-Dist: ellements[finance,web]<0.3,>=0.2.0; extra == 'examples'
|
|
48
|
+
Provides-Extra: ui
|
|
49
|
+
Requires-Dist: textual<7,>=0.40.0; extra == 'ui'
|
|
50
|
+
Description-Content-Type: text/markdown
|
|
51
|
+
|
|
52
|
+
<p align="center">
|
|
53
|
+
<img src="docs/weavemark_logo.png" alt="WeaveMark" width="600">
|
|
54
|
+
</p>
|
|
55
|
+
|
|
56
|
+
# WeaveMark
|
|
57
|
+
**A specification language for readable, reusable, and composable prompts.**
|
|
58
|
+
|
|
59
|
+
> [!WARNING]
|
|
60
|
+
> WeaveMark is highly experimental. The notation, Processor
|
|
61
|
+
> behavior, examples, and public interfaces are still evolving, so expect rough
|
|
62
|
+
> edges, surprising results, and breaking changes.
|
|
63
|
+
|
|
64
|
+
> [!NOTE]
|
|
65
|
+
> WeaveMark is itself developed almost entirely through AI-assisted programming.
|
|
66
|
+
> That is part of the experiment: it treats prompt specification as a
|
|
67
|
+
> language-design problem and asks how far careful human direction plus
|
|
68
|
+
> AI-assisted programming can take language tooling.
|
|
69
|
+
|
|
70
|
+
**WeaveMark** is a Markdown-native **specification language** for prompts. Rather
|
|
71
|
+
than spelling out concrete wording, you *specify* intent — reusable refinements,
|
|
72
|
+
variables, branches, tools, and output contracts — and the **WeaveMark Processor**
|
|
73
|
+
decides how to realize it. A directive like `@refine` declares *what* should shape
|
|
74
|
+
a prompt; the processor works out *how* to weave it into concrete text. You get
|
|
75
|
+
software-grade reuse, composition, and versioning, while the source stays readable
|
|
76
|
+
prose.
|
|
77
|
+
|
|
78
|
+
The readable, reusable units you write in WeaveMark are called **promplets**. A
|
|
79
|
+
promplet is plain Markdown with a few directives; it can stand alone as one
|
|
80
|
+
concrete prompt, or be built from other promplets: shared personas, policies,
|
|
81
|
+
reasoning methods, domain constraints, and output structures reused and refined
|
|
82
|
+
across many prompts. Promplets are compiled by the **WeaveMark Processor**
|
|
83
|
+
(`weavemark`).
|
|
84
|
+
|
|
85
|
+
The twist: compilation is **largely LLM-based**, with deterministic structural
|
|
86
|
+
support. You can write an *abstract* constraint and let a language model realize
|
|
87
|
+
it as concrete prompt text, while parsing, variables, branching, and emission
|
|
88
|
+
stay deterministic. Prose stays central; directives just mark the seams for
|
|
89
|
+
composition, checks, reuse, and emission. Compiling *language* with a *language
|
|
90
|
+
model* is a deliberate experiment — see the FAQ for why.
|
|
91
|
+
|
|
92
|
+
## At a glance
|
|
93
|
+
|
|
94
|
+
| Concept | Meaning |
|
|
95
|
+
| --- | --- |
|
|
96
|
+
| **WeaveMark** | The formal, Markdown-native specification language for prompt systems — and the name of its toolchain and ecosystem. |
|
|
97
|
+
| **promplet** | A reusable prompt-composition artifact written in WeaveMark. |
|
|
98
|
+
| **WeaveMark Processor** | The `weavemark` command that compiles, inspects, and executes promplets. |
|
|
99
|
+
|
|
100
|
+
## What makes it different
|
|
101
|
+
|
|
102
|
+
- **Reuse that does not rot.** A reusable fragment lives in one file. Any
|
|
103
|
+
promplet pulls it in with `@refine`, and the compiler weaves it into that
|
|
104
|
+
document. Update the fragment once and every promplet that refines it picks up
|
|
105
|
+
the new guidance on its next compile — without copy-paste to chase. Because
|
|
106
|
+
compilation is model-based, the quality of each resulting prompt remains
|
|
107
|
+
model- and run-dependent.
|
|
108
|
+
- **Semantic compilation, not templating.** `@refine`, `@style`, `@summarize`,
|
|
109
|
+
and friends operate on *meaning*, so a base spec can be abstract and still
|
|
110
|
+
compile into a concrete, coherent prompt.
|
|
111
|
+
- **Batteries included.** A library of **50+** reusable methods ships in
|
|
112
|
+
[`promplets/`](promplets): MECE, issue trees, ACH, SCAMPER, Six
|
|
113
|
+
Thinking Hats, chain-of-thought, finance lenses, programming stacks and
|
|
114
|
+
modules, teaching, and more.
|
|
115
|
+
- **Classic techniques, runnable.** Reflection, self-consistency, and
|
|
116
|
+
tree-of-thought are reproduced as executable specs you can `--run` through
|
|
117
|
+
different engines.
|
|
118
|
+
- **Specs that become software.** A software promplet compiles into a build-ready
|
|
119
|
+
spec that `weavemark implement` hands to a programming agent — producing a real,
|
|
120
|
+
runnable project (see [`outputs/implementations/orbital-drift/`](outputs/implementations/orbital-drift/README.md)).
|
|
121
|
+
- **Explicit and inspectable.** Structural directives (`@if`, `@match`,
|
|
122
|
+
`@prompt`, `@emit`, `@assert`) resolve locally and deterministically; only the
|
|
123
|
+
semantic directives call the model. You always see the compiled artifact.
|
|
124
|
+
- **Multimodal.** Markdown image references (``) are sent to
|
|
125
|
+
vision models as image inputs, and `@output type: image` turns a promplet into
|
|
126
|
+
an image generator — toggle image lifting with `@compile images: on|off`.
|
|
127
|
+
|
|
128
|
+
## Mental model
|
|
129
|
+
|
|
130
|
+
A `.weavemark.md` file defines a promplet. It is Markdown with a few directives;
|
|
131
|
+
most of it stays the readable prompt intent you want compiled into a concrete
|
|
132
|
+
prompt.
|
|
133
|
+
|
|
134
|
+
```markdown
|
|
135
|
+
@refine module:weavemark.std.reasoning.base_analyst
|
|
136
|
+
|
|
137
|
+
Write a market brief for @{company}.
|
|
138
|
+
|
|
139
|
+
@match depth
|
|
140
|
+
"short" ==>
|
|
141
|
+
Keep it under 300 words.
|
|
142
|
+
"detailed" ==>
|
|
143
|
+
Include market size, competitors, risks, and recommendations.
|
|
144
|
+
|
|
145
|
+
@if include_sources
|
|
146
|
+
Cite sources for every factual claim.
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
The Processor resolves refinements, variables, branches, emitted files, tools,
|
|
150
|
+
and assertions into a structured result. Semantic refinement goes beyond
|
|
151
|
+
templating: the base prompt is abstract, and compilation decides how to realize
|
|
152
|
+
it here.
|
|
153
|
+
|
|
154
|
+
## Installation
|
|
155
|
+
|
|
156
|
+
```bash
|
|
157
|
+
pip install weavemark
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
For local development:
|
|
161
|
+
|
|
162
|
+
```bash
|
|
163
|
+
pip install -e ".[dev]"
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
Full-resolution comic/storybook showcases use Git LFS. They are optional for
|
|
167
|
+
normal development; run `git lfs pull` when you want the original generated
|
|
168
|
+
PNG/PDF artifacts. Lightweight documentation previews remain in ordinary Git.
|
|
169
|
+
|
|
170
|
+
This installs the `weavemark` command — formally, the **WeaveMark Processor**.
|
|
171
|
+
|
|
172
|
+
## Quickstart
|
|
173
|
+
|
|
174
|
+
Compile a promplet into a pastable prompt. By default the Processor asks for any
|
|
175
|
+
missing inputs; add `--batch-only` for automation.
|
|
176
|
+
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
### Experimental protections
|
|
180
|
+
|
|
181
|
+
Protections are enabled by default. They constrain local reads and writes,
|
|
182
|
+
validate remote downloads, require confirmation before Python or external
|
|
183
|
+
process execution. Approved executable
|
|
184
|
+
items are remembered in `~/.weavemark/protection-approvals.json`.
|
|
185
|
+
|
|
186
|
+
> [!CAUTION]
|
|
187
|
+
> These protections reduce common risks; they are **not an OS sandbox**. Do not
|
|
188
|
+
> run promplets you do not trust. `--no-protections` deliberately restores the
|
|
189
|
+
> unrestricted trusted-promplet behavior for one invocation.
|
|
190
|
+
|
|
191
|
+
See the [Processor reference](docs/usage-reference.md#experimental-protections)
|
|
192
|
+
for policy keys, roots, batch behavior, and residual limitations.bash
|
|
193
|
+
|
|
194
|
+
Debug logs are independently configurable and omit binary/base64 payloads by
|
|
195
|
+
default while retaining normal variables and text. See
|
|
196
|
+
[configurable debug logging](docs/usage-reference.md#configurable-debug-logging).bash
|
|
197
|
+
# Guided: the Processor asks for any missing inputs, then compiles.
|
|
198
|
+
weavemark library tutorial-generator
|
|
199
|
+
|
|
200
|
+
# Automation: supply inputs, fail fast if any are missing, write to a file.
|
|
201
|
+
weavemark library tutorial-generator \
|
|
202
|
+
--var topic="FastAPI dependency injection" \
|
|
203
|
+
--var audience=intermediate \
|
|
204
|
+
--var include_exercises=true \
|
|
205
|
+
--var output_format=Markdown \
|
|
206
|
+
--batch-only \
|
|
207
|
+
--output tutorial-prompt.md
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
The output is a clean prompt with variables substituted and authoring directives
|
|
211
|
+
resolved. Open it, then paste it into ChatGPT, Claude, Gemini, Copilot Chat, or
|
|
212
|
+
your own application. From a source checkout you may instead use the prominent,
|
|
213
|
+
canonical repository path directly:
|
|
214
|
+
`promplets/catalog/standalone/tutorial-generator.weavemark.md`.
|
|
215
|
+
|
|
216
|
+
## Reuse in action
|
|
217
|
+
|
|
218
|
+
The superpower is that the *same* building blocks compile into completely
|
|
219
|
+
different artifacts. Two checked-in specs both refine the same finance
|
|
220
|
+
fragments (`passive-income-capital-growth`, `passive-income-forecasting`):
|
|
221
|
+
|
|
222
|
+
- [`financial-independence-decision.weavemark.md`](promplets/catalog/standalone/financial-independence-decision.weavemark.md)
|
|
223
|
+
adds reasoning, finance guidelines, and decision lenses → a **decision-analysis
|
|
224
|
+
prompt**.
|
|
225
|
+
- [`passive-income-android-app.weavemark.md`](promplets/catalog/standalone/passive-income-android-app.weavemark.md)
|
|
226
|
+
adds an Android type, a Kotlin/Compose stack, and a dashboard module → a
|
|
227
|
+
**build-ready app specification**.
|
|
228
|
+
|
|
229
|
+
Improve one finance fragment and both get better the next time they compile.
|
|
230
|
+
Then take the app spec one step further:
|
|
231
|
+
|
|
232
|
+
```bash
|
|
233
|
+
# 1) Compile the software promplet into a plain specification.
|
|
234
|
+
weavemark library passive-income-android-app \
|
|
235
|
+
--var app_name=Fathom --batch-only --output outputs/fathom/compiled-spec.md
|
|
236
|
+
|
|
237
|
+
# 2) Hand it to a headless programming agent to build a runnable project.
|
|
238
|
+
weavemark implement outputs/fathom/compiled-spec.md --name fathom --profile copilot
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
This is not hypothetical: the checked-in
|
|
242
|
+
[Orbital Drift](outputs/implementations/orbital-drift/README.md) game was built
|
|
243
|
+
this way — with `package.json`, a test suite, and run instructions.
|
|
244
|
+
|
|
245
|
+
## Executable promplets
|
|
246
|
+
|
|
247
|
+
Some promplets do not just produce prompt text — they declare an execution
|
|
248
|
+
engine. Reflection, self-consistency, and tree-of-thought are reproduced as
|
|
249
|
+
runnable specs:
|
|
250
|
+
|
|
251
|
+
```bash
|
|
252
|
+
export OPENAI_API_KEY="..."
|
|
253
|
+
|
|
254
|
+
weavemark library tree-of-thought-solver \
|
|
255
|
+
--run \
|
|
256
|
+
--config promplets/catalog/executable/tree-of-thought-solver.weavemark.yaml
|
|
257
|
+
```
|
|
258
|
+
|
|
259
|
+
## Explore the library
|
|
260
|
+
|
|
261
|
+
A few promplets worth opening. The full catalog is in
|
|
262
|
+
[`docs/examples.md`](docs/examples.md), and the reusable building blocks live in
|
|
263
|
+
[`promplets/stdlib/`](promplets/stdlib) and
|
|
264
|
+
[`promplets/domains/`](promplets/domains).
|
|
265
|
+
|
|
266
|
+
The complete root [`promplets/`](promplets) tree is the canonical source and is
|
|
267
|
+
also shipped as an importable package resource. The `library` command presents it
|
|
268
|
+
together with project, user, and additional promplet libraries:
|
|
269
|
+
|
|
270
|
+
```bash
|
|
271
|
+
# Show every effective source and its filesystem root.
|
|
272
|
+
weavemark library sources
|
|
273
|
+
|
|
274
|
+
# Search all roots together.
|
|
275
|
+
weavemark library list finance
|
|
276
|
+
|
|
277
|
+
# Restrict a search or lookup to one source.
|
|
278
|
+
weavemark library list --source user
|
|
279
|
+
weavemark library list --collection stdlib --kind fragment
|
|
280
|
+
weavemark library show builtin:catalog/standalone/investment-brief
|
|
281
|
+
|
|
282
|
+
# Copy the full built-in corpus somewhere you can edit.
|
|
283
|
+
weavemark library copy ./weavemark-promplets
|
|
284
|
+
```
|
|
285
|
+
|
|
286
|
+
The default custom roots are project `./promplets/` and user
|
|
287
|
+
`~/.weavemark/promplets/`. Add more roots through `library_dirs` in
|
|
288
|
+
`~/.weavemark/config.json` or the nearest `.weavemark.config.json`, and through
|
|
289
|
+
repeatable `--library-dir` values.
|
|
290
|
+
For example:
|
|
291
|
+
|
|
292
|
+
```json
|
|
293
|
+
{
|
|
294
|
+
"library_dirs": [
|
|
295
|
+
"~/Documents/weavemark-promplets",
|
|
296
|
+
"/work/team-promplets"
|
|
297
|
+
]
|
|
298
|
+
}
|
|
299
|
+
```
|
|
300
|
+
|
|
301
|
+
Bare library references search project, user, additional, then built-in roots.
|
|
302
|
+
Use a source qualifier or stable module identity when desired:
|
|
303
|
+
|
|
304
|
+
```bash
|
|
305
|
+
weavemark library investment-brief
|
|
306
|
+
weavemark library user:work/quarterly-review
|
|
307
|
+
weavemark library builtin:catalog/standalone/investment-brief
|
|
308
|
+
weavemark library module:weavemark.std.reasoning.base_analyst --scan
|
|
309
|
+
```
|
|
310
|
+
|
|
311
|
+
| WeaveMark | Why it is worth exploring |
|
|
312
|
+
| --- | --- |
|
|
313
|
+
| [`investment-brief.weavemark.md`](promplets/catalog/standalone/investment-brief.weavemark.md) | A pastable analysis prompt with explicit evidence, uncertainty, and safety boundaries. |
|
|
314
|
+
| [`prompt-refactoring-pipeline.weavemark.md`](promplets/catalog/standalone/prompt-refactoring-pipeline.weavemark.md) | Treats a messy prompt as a spec to refactor: `@extract`, `@normalize`, `@revise`, `@expand`, and `@assert`. |
|
|
315
|
+
| [`multi-persona-debate.weavemark.md`](promplets/catalog/standalone/multi-persona-debate.weavemark.md) | Uses semantic `@expand` and `@revise` to build a balanced debate prompt with synthesis modes. |
|
|
316
|
+
| [`creative-ideation.weavemark.md`](promplets/catalog/standalone/creative-ideation.weavemark.md) | Dispatches among reusable ideation methods such as SCAMPER, Six Thinking Hats, and reverse brainstorming. |
|
|
317
|
+
| [`tree-of-thought-solver.weavemark.md`](promplets/catalog/executable/tree-of-thought-solver.weavemark.md) | Makes an execution strategy explicit with separate generation, evaluation, and synthesis prompts. |
|
|
318
|
+
| [`react-agent.weavemark.md`](promplets/catalog/executable/react-agent.weavemark.md) | A compact ReAct agent with tools declared beside the prompt and behavior varied by research depth. |
|
|
319
|
+
| [`voidborne-roguelike.weavemark.md`](promplets/catalog/standalone/voidborne-roguelike.weavemark.md) | Turns a named 2D roguelike idea into an implementation-ready Rust/Bevy specification. |
|
|
320
|
+
| [`adaptive-interview.weavemark.md`](promplets/catalog/standalone/adaptive-interview.weavemark.md) | Nested `@match`, `@if`, `@compress`, and `@generate_examples` adapt one protocol by role, seniority, and format. |
|
|
321
|
+
|
|
322
|
+
## WeaveMark Processor quick reference
|
|
323
|
+
|
|
324
|
+
```bash
|
|
325
|
+
# Guided compile (asks for missing inputs).
|
|
326
|
+
weavemark library tutorial-generator
|
|
327
|
+
|
|
328
|
+
# Strict, non-interactive compile for automation.
|
|
329
|
+
weavemark library tutorial-generator \
|
|
330
|
+
--batch-only \
|
|
331
|
+
--var topic="Python decorators" --var audience=beginner \
|
|
332
|
+
--var include_exercises=false --var output_format=Markdown
|
|
333
|
+
|
|
334
|
+
# Machine-readable output for another program.
|
|
335
|
+
weavemark <promplet> --batch-only --format json
|
|
336
|
+
|
|
337
|
+
# Optional traceability, full-call recording, and strict offline replay.
|
|
338
|
+
weavemark <promplet> --provenance outputs/run.provenance.json
|
|
339
|
+
weavemark <promplet> --record-run outputs/run
|
|
340
|
+
weavemark <promplet> --replay-run outputs/run
|
|
341
|
+
|
|
342
|
+
# Inspect required inputs without compiling.
|
|
343
|
+
weavemark <promplet> --scan
|
|
344
|
+
|
|
345
|
+
# Full terminal UI: input form + live preview.
|
|
346
|
+
weavemark <promplet> --ui
|
|
347
|
+
|
|
348
|
+
# Execute a spec through its engine (needs provider credentials).
|
|
349
|
+
weavemark <executable-promplet> --run --config <promplet>.weavemark.yaml
|
|
350
|
+
|
|
351
|
+
# Browse the built-in corpus and custom libraries.
|
|
352
|
+
weavemark library list
|
|
353
|
+
```
|
|
354
|
+
|
|
355
|
+
Use `--var KEY=VALUE` for a few inputs and `--vars-file vars.json` for reusable
|
|
356
|
+
input sets (inline `--var` overrides file keys). `--batch-only` disables prompts
|
|
357
|
+
and fails before compilation if any discovered input is missing. Structural
|
|
358
|
+
composition runs locally; semantic directives such as `@refine` and `@summarize`
|
|
359
|
+
call the configured LLM, so set provider credentials (e.g. `OPENAI_API_KEY`)
|
|
360
|
+
first. Run `weavemark --help` for all options.
|
|
361
|
+
|
|
362
|
+
## Tooling
|
|
363
|
+
|
|
364
|
+
- **VS Code extension** — directive, variable, match-case, and Markdown-aware
|
|
365
|
+
highlighting plus WeaveMark Dark/Light themes for `.weavemark.md` files. Until it
|
|
366
|
+
is on the marketplace, symlink [`vscode-extension/`](vscode-extension/README.md)
|
|
367
|
+
into your VS Code extensions folder.
|
|
368
|
+
|
|
369
|
+
## Author
|
|
370
|
+
|
|
371
|
+
WeaveMark is authored by Dr. Paulo Salem. Learn more at
|
|
372
|
+
[www.paulosalem.com](https://www.paulosalem.com) or connect on
|
|
373
|
+
[LinkedIn](https://www.linkedin.com/in/paulosalem/).
|
|
374
|
+
|
|
375
|
+
## How to cite WeaveMark
|
|
376
|
+
|
|
377
|
+
If WeaveMark helps your research, writing, or software work, please cite it as
|
|
378
|
+
software. Update the version if you are citing a specific release.
|
|
379
|
+
|
|
380
|
+
**BibTeX**
|
|
381
|
+
|
|
382
|
+
```bibtex
|
|
383
|
+
@misc{salem2026weavemark,
|
|
384
|
+
author = {Salem, Paulo},
|
|
385
|
+
title = {{WeaveMark}: An Experimental Language for Readable, Reusable, and Composable Prompts},
|
|
386
|
+
year = {2026},
|
|
387
|
+
url = {https://github.com/paulosalem/weavemark},
|
|
388
|
+
note = {Version 0.8.0; computer software}
|
|
389
|
+
}
|
|
390
|
+
```
|
|
391
|
+
|
|
392
|
+
**APA**
|
|
393
|
+
|
|
394
|
+
Salem, P. (2026). *WeaveMark: An experimental language for readable, reusable, and
|
|
395
|
+
composable prompts* (Version 0.8.0) [Computer software]. GitHub.
|
|
396
|
+
https://github.com/paulosalem/weavemark
|
|
397
|
+
|
|
398
|
+
## For AI agents
|
|
399
|
+
|
|
400
|
+
If you are an AI programming agent (GitHub Copilot, Claude Code, Cursor, and the
|
|
401
|
+
like), WeaveMark is designed to work *with* you, not around you:
|
|
402
|
+
|
|
403
|
+
- **Organize your own work.** Capture reusable intent as promplets — personas,
|
|
404
|
+
policies, reasoning methods, and output contracts — with `@refine`, instead of
|
|
405
|
+
regenerating sprawling ad-hoc prompts. A specification language gives you
|
|
406
|
+
durable, composable structure to build on.
|
|
407
|
+
- **Specify abstractly; let the Processor make it concrete.** Declare *what* you
|
|
408
|
+
want and `weavemark` compiles it into concrete prompt text, role-tagged packs,
|
|
409
|
+
or a build-ready software spec.
|
|
410
|
+
- **Validate before spending tokens.** `weavemark <spec> --scan` reports the
|
|
411
|
+
inputs and structure a spec needs before any LLM call; `--batch-only --format
|
|
412
|
+
json` gives machine-readable output.
|
|
413
|
+
- **Collaborate with humans cleanly.** A promplet is a precise, readable surface,
|
|
414
|
+
so a person can review or edit only the well-scoped parts — a variable, a
|
|
415
|
+
constraint, an output contract — boundaries you can define for them.
|
|
416
|
+
|
|
417
|
+
**Skills in this repo.** Ready-to-use agent skills (Claude Code and Copilot) live
|
|
418
|
+
under [`.claude/skills/`](.claude/skills/) and [`.github/skills/`](.github/skills/):
|
|
419
|
+
|
|
420
|
+
| Skill | What it does |
|
|
421
|
+
| --- | --- |
|
|
422
|
+
| [`weavemark`](.claude/skills/weavemark/SKILL.md) | Author, validate, compose, and run `.weavemark.md` specs. |
|
|
423
|
+
| [`weavemark-collaborative-handoff`](.claude/skills/weavemark-collaborative-handoff/SKILL.md) | Run, test, debug, and automate collaborative / human-in-the-loop specs (`@execute collaborative`). |
|
|
424
|
+
| [`weavemark-compiled-spec-implementation`](.github/skills/weavemark-compiled-spec-implementation/SKILL.md) | Hand a compiled software spec to a headless programming agent to build a runnable project. |
|
|
425
|
+
| [`weavemark-study-reporting`](.github/skills/weavemark-study-reporting/SKILL.md) | Update study reports, metrics, Markdown/HTML companions, and validation checks. |
|
|
426
|
+
| [`grammar-sync`](.claude/skills/grammar-sync/SKILL.md) | Keep the language definition in sync with its `docs/weavemark.ebnf` mirror. |
|
|
427
|
+
|
|
428
|
+
Repo-wide agent guidance lives in
|
|
429
|
+
[`.github/copilot-instructions.md`](.github/copilot-instructions.md) and
|
|
430
|
+
[`CLAUDE.md`](CLAUDE.md).
|
|
431
|
+
|
|
432
|
+
## Frequently asked questions
|
|
433
|
+
|
|
434
|
+
### Why is the language called WeaveMark and the artifacts called promplets?
|
|
435
|
+
|
|
436
|
+
**WeaveMark** is a *markup* notation for prompts. Like any markup language — think
|
|
437
|
+
HTML — it shapes the content around it, but minimally invasively, keeping the focus
|
|
438
|
+
on the underlying prose (usually Markdown). The name also plays on *mark*: to trace
|
|
439
|
+
boundaries, to assemble marked pieces toward a goal, and to take careful notice —
|
|
440
|
+
something worth *remarking*.
|
|
441
|
+
|
|
442
|
+
A **promplet** is one artifact written in WeaveMark: a reusable unit of prompt
|
|
443
|
+
composition. The name reads two ways — *prompt + -let* (a small, modular artifact,
|
|
444
|
+
like an applet, especially when executable) and *prompt + let* (as in "let x be…",
|
|
445
|
+
emphasizing binding and composition). Keeping distinct names for the language and its
|
|
446
|
+
artifacts is intentional: like "a document written in HTML," you can say "a promplet
|
|
447
|
+
written in WeaveMark" with no ambiguity — no "spec" suffix needed.
|
|
448
|
+
|
|
449
|
+
### Where does the promplet concept come from?
|
|
450
|
+
|
|
451
|
+
The concept grew out of my own work; I developed it during **2025** without being
|
|
452
|
+
aware of anyone else using a similar term. Since then I have been glad to find that a
|
|
453
|
+
few other people have independently explored **kindred ideas** under the similar name
|
|
454
|
+
*promptlet* — each in their own way: a reusable [prompt snippet](https://www.josh.ing/promptlet),
|
|
455
|
+
a [weighted segment of a Midjourney multi-prompt](https://geekycuriosity.substack.com/p/midjourney-beginners-4-making-sense),
|
|
456
|
+
and a unit of [prompt reuse and structure](https://breakingrocks.net/Promptlets-The-Full-How-to-Guide-20f3a5cc79f9808a9422fae353036248).
|
|
457
|
+
|
|
458
|
+
None of these are the same as WeaveMark, and that is part of the fun: the idea of a
|
|
459
|
+
small, named, reusable unit of prompting seems to be in the air, and each project
|
|
460
|
+
takes it somewhere different. WeaveMark simply develops it **in its own direction** —
|
|
461
|
+
toward composable, refinable specifications you can compile. These related efforts are
|
|
462
|
+
a genuinely welcome source of ideas and inspiration. (WeaveMark spells it *promplet*;
|
|
463
|
+
several of them use *promptlet*.)
|
|
464
|
+
|
|
465
|
+
### Why does the notation use `@` and indentation for scoping?
|
|
466
|
+
|
|
467
|
+
To stay as readable as Markdown. `@` marks the few places WeaveMark adds a
|
|
468
|
+
directive, and indentation scopes its body without braces or closing tags. Most
|
|
469
|
+
of a promplet should still read like ordinary prose.
|
|
470
|
+
|
|
471
|
+
### Why Markdown instead of HTML or another markup language?
|
|
472
|
+
|
|
473
|
+
Markdown is already the lingua franca of prompts: readable in plain text,
|
|
474
|
+
familiar to LLM users, and easy to paste anywhere. WeaveMark is not fundamentally
|
|
475
|
+
limited to it — the `@`-based directive style is compatible with many markup
|
|
476
|
+
languages, and future versions could support others.
|
|
477
|
+
|
|
478
|
+
### LLM-based compilation? Are you insane?
|
|
479
|
+
|
|
480
|
+
A little, of course; where would [the fun](https://en.wikipedia.org/wiki/In_Praise_of_Folly)
|
|
481
|
+
be otherwise? Language is the ultimate thinking tool. What if natural language
|
|
482
|
+
could help us design useful new languages more easily? LLMs let us try — so let's
|
|
483
|
+
experiment.
|
|
484
|
+
|
|
485
|
+
### Why not a template engine?
|
|
486
|
+
|
|
487
|
+
Template engines are perfect when the result shape is known exactly: substitute
|
|
488
|
+
this variable, include that partial verbatim. Promplets allow more *abstract*
|
|
489
|
+
composition, at the cost of a generative model realizing the final prompt. That
|
|
490
|
+
makes them more reusable and more readable. Some promplets also go further —
|
|
491
|
+
running compiled prompts through engines like reflection or tree-of-thought, and
|
|
492
|
+
binding trusted companion programs — so WeaveMark can act as a prompting engine,
|
|
493
|
+
not only a language.
|
|
494
|
+
|
|
495
|
+
### This is not literate programming!
|
|
496
|
+
|
|
497
|
+
Not quite: our final "program" is the prompts to be used, woven from abstract,
|
|
498
|
+
readable prose. Under a liberal reading of "program" as "instructions to be
|
|
499
|
+
executed," WeaveMark is a kind of literate programming for natural-language
|
|
500
|
+
instructions — call it "programmatic prompting" if you prefer.
|
|
501
|
+
|
|
502
|
+
## Learn more
|
|
503
|
+
|
|
504
|
+
- [Public tutorial track](docs/tutorial.html) — hands-on lessons from your first promplet to reuse, the semantic toolbox, and spec-to-app.
|
|
505
|
+
- [Python API](docs/python-api.md) — async library usage, execution, custom engines, and diagnostics.
|
|
506
|
+
- [WeaveMark Processor and language reference](docs/usage-reference.md) — batch mode, output formats, emissions, tools, assertions, execution engines, modules, and config.
|
|
507
|
+
- [Example promplets](docs/examples.md) — the included promplet catalog and showcase commands.
|
|
508
|
+
- [Development notes](docs/development.md) — editor extension, architecture, and prompt logging.
|
|
509
|
+
- [Migrating to 0.8](docs/migrating-to-0.8.md) — version policy, compatibility, diagnostics, protections, and replay.
|
|
510
|
+
- [Changelog](CHANGELOG.md) — release-level additions and behavioral changes.
|
|
511
|
+
- [Full language reference](src/weavemark/prompts/weavemark.system.md) — the formal WeaveMark reference used by the Processor.
|