microwave-method 0.1.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.
Files changed (121) hide show
  1. microwave_method-0.1.0/.gitattributes +12 -0
  2. microwave_method-0.1.0/.github/workflows/gates.yml +34 -0
  3. microwave_method-0.1.0/.gitignore +8 -0
  4. microwave_method-0.1.0/CODEOWNERS +10 -0
  5. microwave_method-0.1.0/CONTRIBUTING.md +31 -0
  6. microwave_method-0.1.0/LICENSE +21 -0
  7. microwave_method-0.1.0/NOTICE.md +35 -0
  8. microwave_method-0.1.0/PKG-INFO +228 -0
  9. microwave_method-0.1.0/README.md +215 -0
  10. microwave_method-0.1.0/SECURITY.md +28 -0
  11. microwave_method-0.1.0/docs/embodiment.md +55 -0
  12. microwave_method-0.1.0/docs/governance.md +74 -0
  13. microwave_method-0.1.0/docs/install.md +70 -0
  14. microwave_method-0.1.0/docs/method.md +87 -0
  15. microwave_method-0.1.0/docs/reference.md +117 -0
  16. microwave_method-0.1.0/embodiment/adapters/__init__.py +0 -0
  17. microwave_method-0.1.0/embodiment/adapters/linux.py +78 -0
  18. microwave_method-0.1.0/embodiment/adapters/macos.py +109 -0
  19. microwave_method-0.1.0/embodiment/adapters/windows.py +152 -0
  20. microwave_method-0.1.0/embodiment/embody.py +188 -0
  21. microwave_method-0.1.0/embodiment/icons/factory.png +0 -0
  22. microwave_method-0.1.0/embodiment/icons/librarian.png +0 -0
  23. microwave_method-0.1.0/flows/adopt.md +69 -0
  24. microwave_method-0.1.0/flows/amend-rule.md +31 -0
  25. microwave_method-0.1.0/flows/create-agent.md +49 -0
  26. microwave_method-0.1.0/flows/create-feature.md +41 -0
  27. microwave_method-0.1.0/flows/devil-loop.md +46 -0
  28. microwave_method-0.1.0/flows/devil-review.md +84 -0
  29. microwave_method-0.1.0/flows/librarian.md +39 -0
  30. microwave_method-0.1.0/flows/metrics.md +41 -0
  31. microwave_method-0.1.0/flows/resume.md +35 -0
  32. microwave_method-0.1.0/flows/save.md +59 -0
  33. microwave_method-0.1.0/flows/welcome.md +95 -0
  34. microwave_method-0.1.0/gates/_lib.py +201 -0
  35. microwave_method-0.1.0/gates/activate.py +87 -0
  36. microwave_method-0.1.0/gates/docgen.py +130 -0
  37. microwave_method-0.1.0/gates/gate_antidup.py +62 -0
  38. microwave_method-0.1.0/gates/gate_brief.py +45 -0
  39. microwave_method-0.1.0/gates/gate_docs.py +31 -0
  40. microwave_method-0.1.0/gates/gate_embodiment.py +68 -0
  41. microwave_method-0.1.0/gates/gate_schema.py +107 -0
  42. microwave_method-0.1.0/gates/gate_slop.py +106 -0
  43. microwave_method-0.1.0/gates/gate_testable.py +52 -0
  44. microwave_method-0.1.0/gates/gate_wiki.py +119 -0
  45. microwave_method-0.1.0/gates/metrics.py +118 -0
  46. microwave_method-0.1.0/gates/run_gates.py +37 -0
  47. microwave_method-0.1.0/gates/trace.py +136 -0
  48. microwave_method-0.1.0/harness/claude-settings.example.json +21 -0
  49. microwave_method-0.1.0/hooks/install-hooks.ps1 +22 -0
  50. microwave_method-0.1.0/hooks/install-hooks.sh +23 -0
  51. microwave_method-0.1.0/hooks/pre-commit +41 -0
  52. microwave_method-0.1.0/install/banner.txt +10 -0
  53. microwave_method-0.1.0/install/bootstrap.ps1 +36 -0
  54. microwave_method-0.1.0/install/bootstrap.sh +21 -0
  55. microwave_method-0.1.0/install/install.ps1 +76 -0
  56. microwave_method-0.1.0/install/install.sh +56 -0
  57. microwave_method-0.1.0/microwave_method/__init__.py +131 -0
  58. microwave_method-0.1.0/pyproject.toml +43 -0
  59. microwave_method-0.1.0/slop/slop-rules.csv +16 -0
  60. microwave_method-0.1.0/techniques/README.md +39 -0
  61. microwave_method-0.1.0/techniques/brainstorming-methods.csv +109 -0
  62. microwave_method-0.1.0/techniques/design-methods.csv +31 -0
  63. microwave_method-0.1.0/techniques/elicitation-methods.csv +72 -0
  64. microwave_method-0.1.0/techniques/innovation-frameworks.csv +31 -0
  65. microwave_method-0.1.0/techniques/solving-methods.csv +31 -0
  66. microwave_method-0.1.0/techniques/story-types.csv +26 -0
  67. microwave_method-0.1.0/templates/adr.md +27 -0
  68. microwave_method-0.1.0/templates/agent-card.md +52 -0
  69. microwave_method-0.1.0/templates/brief.md +19 -0
  70. microwave_method-0.1.0/templates/bug.md +28 -0
  71. microwave_method-0.1.0/templates/devil-report.md +32 -0
  72. microwave_method-0.1.0/templates/inventory-entry.md +25 -0
  73. microwave_method-0.1.0/templates/learning.md +24 -0
  74. microwave_method-0.1.0/templates/project-seed.md +24 -0
  75. microwave_method-0.1.0/templates/session-save.md +40 -0
  76. microwave_method-0.1.0/templates/story.md +24 -0
  77. microwave_method-0.1.0/wiki/INDEX.md +22 -0
  78. microwave_method-0.1.0/wiki/RULES.md +128 -0
  79. microwave_method-0.1.0/wiki/_archive/README.md +14 -0
  80. microwave_method-0.1.0/wiki/_staging/README.md +16 -0
  81. microwave_method-0.1.0/wiki/adr/ADR-001-two-pass-method.md +32 -0
  82. microwave_method-0.1.0/wiki/adr/ADR-002-machine-gates.md +32 -0
  83. microwave_method-0.1.0/wiki/adr/ADR-003-ceremony-selector.md +42 -0
  84. microwave_method-0.1.0/wiki/adr/ADR-004-embodiment.md +43 -0
  85. microwave_method-0.1.0/wiki/adr/ADR-005-two-plane-wiki.md +32 -0
  86. microwave_method-0.1.0/wiki/adr/ADR-006-harness-enforcement.md +36 -0
  87. microwave_method-0.1.0/wiki/adr/ADR-007-stdlib-gates.md +34 -0
  88. microwave_method-0.1.0/wiki/adr/ADR-008-bootstrap.md +33 -0
  89. microwave_method-0.1.0/wiki/adr/ADR-009-devil-review.md +36 -0
  90. microwave_method-0.1.0/wiki/adr/ADR-010-adopt-first.md +37 -0
  91. microwave_method-0.1.0/wiki/adr/ADR-011-anti-slop.md +41 -0
  92. microwave_method-0.1.0/wiki/adr/ADR-012-session-saves.md +42 -0
  93. microwave_method-0.1.0/wiki/adr/ADR-013-lossless-adoption.md +50 -0
  94. microwave_method-0.1.0/wiki/adr/ADR-014-continuous-measurement.md +50 -0
  95. microwave_method-0.1.0/wiki/adr/ADR-015-artifacts-have-a-form.md +52 -0
  96. microwave_method-0.1.0/wiki/adr/ADR-016-design-and-code-are-shared-layers.md +60 -0
  97. microwave_method-0.1.0/wiki/adr/ADR-017-two-memories.md +50 -0
  98. microwave_method-0.1.0/wiki/adr/ADR-018-contribution-digest.md +45 -0
  99. microwave_method-0.1.0/wiki/adr/ADR-019-capture-triggers-on-context-pressure.md +83 -0
  100. microwave_method-0.1.0/wiki/adr/ADR-020-verify-global-impact.md +56 -0
  101. microwave_method-0.1.0/wiki/adr/ADR-021-traceability-is-a-git-projection.md +56 -0
  102. microwave_method-0.1.0/wiki/adr/ADR-022-derivable-docs-are-generated.md +61 -0
  103. microwave_method-0.1.0/wiki/adr/ADR-023-guided-flows-adapt-to-the-person.md +66 -0
  104. microwave_method-0.1.0/wiki/adr/ADR-024-one-command-install-via-uvx.md +57 -0
  105. microwave_method-0.1.0/wiki/agents/factory.md +61 -0
  106. microwave_method-0.1.0/wiki/agents/librarian.md +55 -0
  107. microwave_method-0.1.0/wiki/metrics/LEDGER.md +11 -0
  108. microwave_method-0.1.0/wiki/projects/README.md +6 -0
  109. microwave_method-0.1.0/wiki/projects/microwave/brief.md +27 -0
  110. microwave_method-0.1.0/wiki/projects/microwave/learnings/LRN-001-directories-lie.md +30 -0
  111. microwave_method-0.1.0/wiki/projects/microwave/learnings/LRN-002-oversized-artifacts.md +30 -0
  112. microwave_method-0.1.0/wiki/projects/microwave/learnings/LRN-003-archive-quotes-foreign.md +32 -0
  113. microwave_method-0.1.0/wiki/projects/microwave/learnings/LRN-004-context-skills-atomic.md +36 -0
  114. microwave_method-0.1.0/wiki/projects/microwave/learnings/LRN-005-consolidate-engine-not-verbs.md +39 -0
  115. microwave_method-0.1.0/wiki/projects/microwave/learnings/LRN-006-capture-on-the-critical-path.md +36 -0
  116. microwave_method-0.1.0/wiki/projects/microwave/learnings/LRN-007-shared-source-stays-a-layer.md +36 -0
  117. microwave_method-0.1.0/wiki/projects/microwave/learnings/LRN-008-classify-form-before-disposition.md +34 -0
  118. microwave_method-0.1.0/wiki/projects/microwave/learnings/LRN-009-design-system-is-a-compound-memory.md +34 -0
  119. microwave_method-0.1.0/wiki/projects/microwave/learnings/LRN-010-gates-scope-to-produced-content.md +34 -0
  120. microwave_method-0.1.0/wiki/projects/microwave/learnings/LRN-011-negation-in-heuristics.md +34 -0
  121. microwave_method-0.1.0/wiki/sessions/REGISTER.md +9 -0
@@ -0,0 +1,12 @@
1
+ * text=auto
2
+ *.sh text eol=lf
3
+ *.py text eol=lf
4
+ *.md text eol=lf
5
+ *.csv text eol=lf
6
+ *.yml text eol=lf
7
+ *.json text eol=lf
8
+ hooks/pre-commit text eol=lf
9
+ *.ps1 text eol=crlf
10
+ *.png binary
11
+ *.ico binary
12
+ *.icns binary
@@ -0,0 +1,34 @@
1
+ name: gates
2
+ on:
3
+ pull_request:
4
+ push:
5
+ branches: [main]
6
+
7
+ permissions:
8
+ contents: read
9
+
10
+ jobs:
11
+ gates:
12
+ runs-on: ubuntu-latest
13
+ steps:
14
+ - uses: actions/checkout@v4
15
+ - uses: actions/setup-python@v5
16
+ with:
17
+ python-version: "3.12"
18
+ - name: Wiki integrity
19
+ run: python gates/gate_wiki.py
20
+ - name: Anti-slop sweep
21
+ run: python gates/gate_slop.py
22
+ - name: Generated docs are fresh
23
+ run: python gates/gate_docs.py
24
+ - name: All agent cards (active and staged)
25
+ run: |
26
+ set -e
27
+ found=0
28
+ for card in wiki/agents/*.md wiki/_staging/*.md; do
29
+ [ -e "$card" ] || continue
30
+ case "$card" in *README.md) continue;; esac
31
+ found=1
32
+ python gates/run_gates.py "$card"
33
+ done
34
+ [ "$found" = "1" ] || echo "no agent cards yet"
@@ -0,0 +1,8 @@
1
+ __pycache__/
2
+ *.pyc
3
+ .DS_Store
4
+ Thumbs.db
5
+ *.bak.*
6
+ dist/
7
+ .venv/
8
+ embodiment/icons/build/
@@ -0,0 +1,10 @@
1
+ # The gatekeeper owns the protected space: no change to the rules, the flows,
2
+ # or the meta wiki merges without their review (pair with branch protection,
3
+ # see docs/governance.md "Repo layer").
4
+ /gates/ @microphage-create
5
+ /flows/ @microphage-create
6
+ /hooks/ @microphage-create
7
+ /harness/ @microphage-create
8
+ /wiki/adr/ @microphage-create
9
+ /.github/ @microphage-create
10
+ /CODEOWNERS @microphage-create
@@ -0,0 +1,31 @@
1
+ # Contributing
2
+
3
+ The most valuable first contribution takes five minutes: run the macOS or
4
+ Linux embodiment adapter on a real machine and report what happened (see
5
+ `docs/embodiment.md`). Open an issue titled `adapter-report: <os>` with your
6
+ OS version, your terminal, and the output of:
7
+
8
+ ```
9
+ python3 embodiment/embody.py wiki/agents/factory.md --dry-run
10
+ python3 embodiment/embody.py wiki/agents/factory.md
11
+ python3 embodiment/embody.py wiki/agents/factory.md --remove
12
+ ```
13
+
14
+ ## Pull requests
15
+
16
+ - Run the gates before pushing: `python gates/gate_wiki.py && python
17
+ gates/gate_slop.py` (the pre-commit hook does this if you ran
18
+ `hooks/install-hooks.sh`). CI runs them on every PR.
19
+ - Changes to `gates/`, `flows/`, `hooks/`, `harness/` or `wiki/adr/` go
20
+ through the amend-rule flow (`flows/amend-rule.md`) and require gatekeeper
21
+ review (see CODEOWNERS).
22
+ - Keep it stdlib-only (ADR-007): a PR adding a dependency to a gate or an
23
+ adapter core path will be declined.
24
+ - Prose follows the repo's own slop rules (`slop/slop-rules.csv`); the gates
25
+ will tell you.
26
+
27
+ ## Scope
28
+
29
+ Bug fixes, adapter reports, portability fixes and slop-rule contributions
30
+ are welcome directly. New flows, gates or adapters: open an issue first so
31
+ the design discussion happens before the code.
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Microphage SASU (Romain Bigache)
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.
@@ -0,0 +1,35 @@
1
+ # Notices
2
+
3
+ Microwave Method is an original work by Microphage SASU (Romain Bigache), MIT licensed.
4
+
5
+ ## Attribution
6
+
7
+ The elicitation and guided-creation approach is inspired by the
8
+ **BMAD-METHOD** project (https://github.com/bmad-code-org/BMAD-METHOD),
9
+ released under the MIT License, copyright (c) 2025 BMad Code, LLC and
10
+ contributors.
11
+
12
+ Adapted from BMAD-METHOD (MIT), with gratitude:
13
+ - `techniques/brainstorming-methods.csv`: from
14
+ `src/core-skills/bmad-brainstorming/assets/brain-methods.csv`
15
+ - `techniques/elicitation-methods.csv`: from
16
+ `src/core-skills/bmad-advanced-elicitation/assets/methods.csv`
17
+
18
+ Adapted from bmad-module-creative-intelligence-suite
19
+ (https://github.com/bmad-code-org/bmad-module-creative-intelligence-suite,
20
+ MIT, copyright (c) 2025 BMad Code, LLC), with gratitude:
21
+ - `techniques/design-methods.csv`, `techniques/solving-methods.csv`,
22
+ `techniques/innovation-frameworks.csv`, `techniques/story-types.csv`:
23
+ from `src/skills/bmad-cis-*/`.
24
+
25
+ The severity-grid and derived-verdict pattern in `flows/devil-review.md` is
26
+ informed by the design discussion published in the BMAD Test Architecture
27
+ Enterprise module (criteria registry: fixed severities, verdicts derived
28
+ from findings).
29
+
30
+ "BMAD" is a trademark of its respective owner. Microwave Method is not
31
+ affiliated with, endorsed by, or sponsored by the BMAD project. No BMAD
32
+ trademark is used to name or brand this project.
33
+
34
+ The persistent-wiki pattern draws on Andrej Karpathy's public `llm-wiki` gist
35
+ (concept, not code).
@@ -0,0 +1,228 @@
1
+ Metadata-Version: 2.5
2
+ Name: microwave-method
3
+ Version: 0.1.0
4
+ Summary: An agent factory with a governed memory. One command drops it into your repo and hands you to your coding agent for a guided welcome.
5
+ Project-URL: Homepage, https://github.com/microphage-create/microwave-method
6
+ Author: Microphage
7
+ License-Expression: MIT
8
+ License-File: LICENSE
9
+ License-File: NOTICE.md
10
+ Keywords: agents,factory,governance,llm,wiki
11
+ Requires-Python: >=3.10
12
+ Description-Content-Type: text/markdown
13
+
14
+ # Microwave Method
15
+
16
+ **An agent factory with a governed memory. Heavy pass once per agent, light pass per feature. Context is cooked once and reheated at cache price.**
17
+
18
+ *Methods tell you what to do. Microwave verifies it was done.*
19
+
20
+ [![gates](https://github.com/microphage-create/microwave-method/actions/workflows/gates.yml/badge.svg)](https://github.com/microphage-create/microwave-method/actions/workflows/gates.yml)
21
+ [![license: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)
22
+
23
+ Microwave is a method, not a runtime. It ships as markdown flows, templates, and
24
+ a handful of dependency-free scripts that any coding agent (Claude Code, Codex,
25
+ Cursor, ...) can execute. It answers one question organizations keep failing at:
26
+ **how do you let everyone create agents without ending up with a pile of agents
27
+ nobody can map?**
28
+
29
+ > [Gartner projects 150,000+ agents per Fortune 500 enterprise by 2028](https://cxotoday.com/editors-picks/how-to-manage-ai-agent-sprawl-a-six-step-framework-by-gartner/),
30
+ > and prescribes exactly three things: rules for who creates agents, a central
31
+ > inventory, and a lifecycle that retires redundant ones.
32
+ > [94% of IT leaders say agent sprawl is already increasing complexity and risk; 12% have a central platform for it](https://www.outsystems.com/news/enterprise-ai-agent-report-2026/).
33
+ > Microwave is that missing method, as open source you install in your repo,
34
+ > not a SaaS you buy.
35
+
36
+ ## Why "Microwave"
37
+
38
+ A microwave oven does not cook your dish from scratch. It excites the water
39
+ molecules already present in it. That is the whole thesis: **your wiki atoms are
40
+ the water molecules.** The expensive work (specifying an agent, curating what it
41
+ learned) is done once and stored. Every subsequent feature just reheats context
42
+ that already exists, at cache-read price, instead of rediscovering it from
43
+ scratch on every session.
44
+
45
+ ## The middle you were missing
46
+
47
+ - Heavyweight agent methods give you structure, at the cost of hours of ceremony
48
+ per object, producing documents nobody reads again.
49
+ - Plan-mode-style planning gives you speed, and leaves nothing behind: no
50
+ durable artifact, no governance, no compounding.
51
+
52
+ Microwave is the middle, **by construction, not by promise**, through two
53
+ mechanical tests:
54
+
55
+ 1. **The consumption test.** A method step exists only if its artifact is
56
+ consumed by someone: the runtime, the registry, or the gatekeeper. A step whose
57
+ output nobody reads is deleted from the method.
58
+ 2. **The ceremony selector.** The depth of the creation flow is proportional to
59
+ the agent's blast radius (what it can read, write, spend, or touch), never to
60
+ the creator's mood. Read-only helper: fast path, minutes. Agent that writes,
61
+ spends, or touches production: full path, with a human gatekeeper before
62
+ activation.
63
+
64
+ ## How it works
65
+
66
+ One recursive method, two planes, one registry.
67
+
68
+ ```
69
+ META PLANE (the factory) PRODUCT PLANE (the work)
70
+ ┌────────────────────────────────────┐ ┌────────────────────────────────────┐
71
+ │ PASS 1 - heavy, ONCE per agent │ │ PASS 2 - light, EVERY feature │
72
+ │ elicit → spec → anti-dup → build │ │ intent → short story with │
73
+ │ → embodiment → card in registry │───▶│ verifiable done-criteria → build │
74
+ │ → wiki seeded │ │ → traces written to the wiki │
75
+ └────────────────────────────────────┘ └────────────────────────────────────┘
76
+ ▲ │
77
+ └──── governed promotion (gatekeeper) ◀──┘
78
+ ```
79
+
80
+ - **The registry** is an index-first file: one line per agent, cards opened on
81
+ demand, readable by humans and by LLMs, consumed at runtime. A registry the
82
+ runtime reads cannot rot into dead documentation.
83
+ - **The wiki** has one format and two scopes: `wiki/agents/` +
84
+ `wiki/adr/` (org-wide meta plane) and `wiki/projects/<name>/` (product
85
+ plane). Learnings are promoted upward only through the gatekeeper. Subsidiarity:
86
+ every atom lives at the lowest level that suffices.
87
+ - **Recursion is governed.** Agents may create agents, but only through the
88
+ factory: the factory is the single entry point of creation. That is the
89
+ anti-sprawl invariant.
90
+
91
+ ## The memory is a wiki, not a RAG
92
+
93
+ Most tools bolt memory on as a RAG: chop your docs into chunks, turn each chunk
94
+ into an opaque vector, and at query time pull back "whatever looks similar". It
95
+ half-works, and it rots invisibly: chunks are cut mid-thought, similarity
96
+ retrieval is fuzzy so it misses the relevant and drags in noise, nobody can read
97
+ a vector, and nothing is governed, so a stale or wrong chunk lives forever.
98
+
99
+ Microwave's memory is a governed wiki of atoms (the Karpathy pattern). One atom
100
+ is one idea, in plain markdown, tagged (type, id) and linked to the others.
101
+ Three things follow:
102
+
103
+ - **Readable both ways.** The same file serves the human, who reads and corrects
104
+ it, and the agent, which opens it on demand. One source of truth, not a doc set
105
+ for people plus a vector store for the machine. You can see, in plain text,
106
+ what your system knows.
107
+ - **Targeted, not fuzzy.** An index holds one line per atom; the agent reads the
108
+ menu and opens the exact atom by name, instead of scooping the whole fridge
109
+ hoping to catch the right chunk. Deterministic where RAG is probabilistic. It
110
+ is the microwave again: excite the right molecule, do not reheat the whole pan.
111
+ - **Governed and alive.** The gates refuse duplicates, doctrine distills instead
112
+ of piling up, and wikilinks turn atoms into a graph, a real body of knowledge.
113
+ This is the second brain of your whole workflow: a persistent external memory
114
+ your agents query, not a throwaway context reloaded blind every session.
115
+
116
+ RAG is not wrong; it is the right tool for searching a huge unstructured corpus.
117
+ But for the cumulative memory of a workflow, knowledge you want correct,
118
+ structured and current, the atom wiki wins outright, and at scale the index can
119
+ itself gain a retrieval layer. Right tool, right place.
120
+
121
+ ## Gates, not meetings
122
+
123
+ A creation plan passes a series of **machine gates**, like a CI for agent
124
+ creation. No committee, no ceremony:
125
+
126
+ <!-- microwave:gates start -->
127
+ <!-- generated by gates/docgen.py, do not edit by hand -->
128
+
129
+ | Gate | Guarantee |
130
+ |---|---|
131
+ | `gate_antidup` | no unjustified overlap with the registry |
132
+ | `gate_brief` | the 3-section brief is complete |
133
+ | `gate_schema` | the agent card matches the template contract |
134
+ | `gate_testable` | every done-criterion is tied to an executable check |
135
+ | `gate_embodiment` | the agent has a body when it needs one |
136
+ | `gate_slop` | durable artifacts do not read like slop |
137
+ | `gate_wiki` | the wiki is linked, indexed, and its atoms carry their contract |
138
+ | `gate_docs` | generated doc sections match their source |
139
+
140
+ <!-- microwave:gates end -->
141
+
142
+ This table is generated from the gates themselves by `gates/docgen.py` and
143
+ cannot go stale: `gate_docs` fails the build if it drifts from the code
144
+ (ADR-022). The slop bank (`slop/slop-rules.csv`) ships as a generic starter and
145
+ takes your org's own rows; the mechanism does not change.
146
+
147
+ Every gate rejects with an actionable message; you fix and re-run. Gates check
148
+ form; substance is attacked by the **devil loop** (`flows/devil-loop.md`): a
149
+ fresh agent session with no creation context reviews every full-path creation
150
+ adversarially, round after round, until it finds nothing. **One single human
151
+ point**: the gatekeeper, only on the full path, judging only cards with a
152
+ clean devil report. On the fast path, green gates = `gates/activate.py`,
153
+ nobody to wait for.
154
+
155
+ Rules are enforced at the harness level, the way a coding agent is denied
156
+ reading your `.env`: the system refuses, goodwill is not involved. Shipped as
157
+ artifacts: example permission deny-rules (`harness/`), a pre-commit hook that
158
+ runs the gates (`hooks/`), a CI workflow (`.github/workflows/gates.yml`) and
159
+ `CODEOWNERS` on the protected space. One thing files cannot carry: enable
160
+ branch protection on your host (the installer prints the command). Rules are
161
+ inviolable in execution and amendable only through process
162
+ (`flows/amend-rule.md`): a constitution, not a dogma.
163
+
164
+ ## Agents as apps
165
+
166
+ An agent that can do damage is not done until it has a body (a read-only
167
+ one may stay bodiless): pass 1 generates its desktop presence: an icon, a short name, a themed terminal profile, a launcher. These
168
+ are **terminals dressed as apps, not apps replacing the terminal**: full
169
+ terminal power, zero anonymity. With five sessions open in parallel you know
170
+ who is who at a glance. One identity manifest, one adapter per OS
171
+ (Windows Terminal + PowerShell, iTerm2/Terminal.app, freedesktop). The
172
+ Windows adapter is the tested reference; **macOS and Linux adapters are
173
+ experimental (written, not yet run on real machines): testing one takes five
174
+ minutes and a report is a welcome first contribution.** See
175
+ `docs/embodiment.md`.
176
+
177
+ ## Install (one line)
178
+
179
+ ```powershell
180
+ # Windows (PowerShell 7+), from your repo:
181
+ irm https://raw.githubusercontent.com/microphage-create/microwave-method/main/install/bootstrap.ps1 | iex
182
+ ```
183
+
184
+ ```bash
185
+ # macOS / Linux, from your repo:
186
+ curl -fsSL https://raw.githubusercontent.com/microphage-create/microwave-method/main/install/bootstrap.sh | bash
187
+ ```
188
+
189
+ Prerequisites: `git` and Python 3.10+, nothing else (stdlib only). Per-OS
190
+ walkthrough, troubleshooting and uninstall: `docs/install.md`. The generated
191
+ reference (flows, gates, decisions) is `docs/reference.md`.
192
+
193
+ This copies the flows, templates, technique banks, slop rules, gates,
194
+ embodiment tooling, harness examples and hooks into your repo, wires the
195
+ pre-commit hook, and drops the CI workflow and a CODEOWNERS placeholder. Finish the hardening by enabling
196
+ branch protection (the installer prints the command).
197
+
198
+ Then start where every real organization starts: with what already exists:
199
+ open your coding agent and say *"run the Microwave adopt flow"*. It scans
200
+ wherever your agents sleep (`.claude/`, prompt folders, repos), archives one
201
+ inventory entry per artifact found, and writes the shopping list of
202
+ migrations (`wiki/_archive/BACKLOG.md`). Migrating an archived agent through
203
+ *"run the Microwave create-agent flow"* is the cheapest creation you will
204
+ ever run: the entry is the elicitation input.
205
+
206
+ ## The economics, honestly
207
+
208
+ - Reading context dominates agent cost: **76.1% of operation tokens** in
209
+ measured coding sessions (SWE-Pruner, arXiv:2601.16746).
210
+ - Static context files alone are disputed: one study measured −28.6% runtime
211
+ (arXiv:2601.20404), two replications found no correctness effect
212
+ (arXiv:2602.11988, arXiv:2607.27250). We do not sell that number.
213
+ - What holds: **continuously refined context beats static context** (33.0% vs
214
+ 28.3% resolution, p<0.001, arXiv:2606.20512). It is the *governed upkeep* of
215
+ context that pays, not the file. That upkeep is precisely what this method
216
+ automates, and what your provider's prompt cache (0.1x read price) turns into
217
+ savings across sessions and agents.
218
+
219
+ Measure your own numbers: the method instruments itself (see `docs/method.md`).
220
+
221
+ ## Status
222
+
223
+ Extracted from a system operated daily since early 2026 by its author (45+
224
+ active skills, a 4-generation governed rule corpus, 300+ knowledge atoms on a
225
+ single product). Bootstrapped light, self-hosting as soon as the factory runs:
226
+ Microwave's next module is created by Microwave.
227
+
228
+ MIT. See `NOTICE.md` for attributions.
@@ -0,0 +1,215 @@
1
+ # Microwave Method
2
+
3
+ **An agent factory with a governed memory. Heavy pass once per agent, light pass per feature. Context is cooked once and reheated at cache price.**
4
+
5
+ *Methods tell you what to do. Microwave verifies it was done.*
6
+
7
+ [![gates](https://github.com/microphage-create/microwave-method/actions/workflows/gates.yml/badge.svg)](https://github.com/microphage-create/microwave-method/actions/workflows/gates.yml)
8
+ [![license: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)
9
+
10
+ Microwave is a method, not a runtime. It ships as markdown flows, templates, and
11
+ a handful of dependency-free scripts that any coding agent (Claude Code, Codex,
12
+ Cursor, ...) can execute. It answers one question organizations keep failing at:
13
+ **how do you let everyone create agents without ending up with a pile of agents
14
+ nobody can map?**
15
+
16
+ > [Gartner projects 150,000+ agents per Fortune 500 enterprise by 2028](https://cxotoday.com/editors-picks/how-to-manage-ai-agent-sprawl-a-six-step-framework-by-gartner/),
17
+ > and prescribes exactly three things: rules for who creates agents, a central
18
+ > inventory, and a lifecycle that retires redundant ones.
19
+ > [94% of IT leaders say agent sprawl is already increasing complexity and risk; 12% have a central platform for it](https://www.outsystems.com/news/enterprise-ai-agent-report-2026/).
20
+ > Microwave is that missing method, as open source you install in your repo,
21
+ > not a SaaS you buy.
22
+
23
+ ## Why "Microwave"
24
+
25
+ A microwave oven does not cook your dish from scratch. It excites the water
26
+ molecules already present in it. That is the whole thesis: **your wiki atoms are
27
+ the water molecules.** The expensive work (specifying an agent, curating what it
28
+ learned) is done once and stored. Every subsequent feature just reheats context
29
+ that already exists, at cache-read price, instead of rediscovering it from
30
+ scratch on every session.
31
+
32
+ ## The middle you were missing
33
+
34
+ - Heavyweight agent methods give you structure, at the cost of hours of ceremony
35
+ per object, producing documents nobody reads again.
36
+ - Plan-mode-style planning gives you speed, and leaves nothing behind: no
37
+ durable artifact, no governance, no compounding.
38
+
39
+ Microwave is the middle, **by construction, not by promise**, through two
40
+ mechanical tests:
41
+
42
+ 1. **The consumption test.** A method step exists only if its artifact is
43
+ consumed by someone: the runtime, the registry, or the gatekeeper. A step whose
44
+ output nobody reads is deleted from the method.
45
+ 2. **The ceremony selector.** The depth of the creation flow is proportional to
46
+ the agent's blast radius (what it can read, write, spend, or touch), never to
47
+ the creator's mood. Read-only helper: fast path, minutes. Agent that writes,
48
+ spends, or touches production: full path, with a human gatekeeper before
49
+ activation.
50
+
51
+ ## How it works
52
+
53
+ One recursive method, two planes, one registry.
54
+
55
+ ```
56
+ META PLANE (the factory) PRODUCT PLANE (the work)
57
+ ┌────────────────────────────────────┐ ┌────────────────────────────────────┐
58
+ │ PASS 1 - heavy, ONCE per agent │ │ PASS 2 - light, EVERY feature │
59
+ │ elicit → spec → anti-dup → build │ │ intent → short story with │
60
+ │ → embodiment → card in registry │───▶│ verifiable done-criteria → build │
61
+ │ → wiki seeded │ │ → traces written to the wiki │
62
+ └────────────────────────────────────┘ └────────────────────────────────────┘
63
+ ▲ │
64
+ └──── governed promotion (gatekeeper) ◀──┘
65
+ ```
66
+
67
+ - **The registry** is an index-first file: one line per agent, cards opened on
68
+ demand, readable by humans and by LLMs, consumed at runtime. A registry the
69
+ runtime reads cannot rot into dead documentation.
70
+ - **The wiki** has one format and two scopes: `wiki/agents/` +
71
+ `wiki/adr/` (org-wide meta plane) and `wiki/projects/<name>/` (product
72
+ plane). Learnings are promoted upward only through the gatekeeper. Subsidiarity:
73
+ every atom lives at the lowest level that suffices.
74
+ - **Recursion is governed.** Agents may create agents, but only through the
75
+ factory: the factory is the single entry point of creation. That is the
76
+ anti-sprawl invariant.
77
+
78
+ ## The memory is a wiki, not a RAG
79
+
80
+ Most tools bolt memory on as a RAG: chop your docs into chunks, turn each chunk
81
+ into an opaque vector, and at query time pull back "whatever looks similar". It
82
+ half-works, and it rots invisibly: chunks are cut mid-thought, similarity
83
+ retrieval is fuzzy so it misses the relevant and drags in noise, nobody can read
84
+ a vector, and nothing is governed, so a stale or wrong chunk lives forever.
85
+
86
+ Microwave's memory is a governed wiki of atoms (the Karpathy pattern). One atom
87
+ is one idea, in plain markdown, tagged (type, id) and linked to the others.
88
+ Three things follow:
89
+
90
+ - **Readable both ways.** The same file serves the human, who reads and corrects
91
+ it, and the agent, which opens it on demand. One source of truth, not a doc set
92
+ for people plus a vector store for the machine. You can see, in plain text,
93
+ what your system knows.
94
+ - **Targeted, not fuzzy.** An index holds one line per atom; the agent reads the
95
+ menu and opens the exact atom by name, instead of scooping the whole fridge
96
+ hoping to catch the right chunk. Deterministic where RAG is probabilistic. It
97
+ is the microwave again: excite the right molecule, do not reheat the whole pan.
98
+ - **Governed and alive.** The gates refuse duplicates, doctrine distills instead
99
+ of piling up, and wikilinks turn atoms into a graph, a real body of knowledge.
100
+ This is the second brain of your whole workflow: a persistent external memory
101
+ your agents query, not a throwaway context reloaded blind every session.
102
+
103
+ RAG is not wrong; it is the right tool for searching a huge unstructured corpus.
104
+ But for the cumulative memory of a workflow, knowledge you want correct,
105
+ structured and current, the atom wiki wins outright, and at scale the index can
106
+ itself gain a retrieval layer. Right tool, right place.
107
+
108
+ ## Gates, not meetings
109
+
110
+ A creation plan passes a series of **machine gates**, like a CI for agent
111
+ creation. No committee, no ceremony:
112
+
113
+ <!-- microwave:gates start -->
114
+ <!-- generated by gates/docgen.py, do not edit by hand -->
115
+
116
+ | Gate | Guarantee |
117
+ |---|---|
118
+ | `gate_antidup` | no unjustified overlap with the registry |
119
+ | `gate_brief` | the 3-section brief is complete |
120
+ | `gate_schema` | the agent card matches the template contract |
121
+ | `gate_testable` | every done-criterion is tied to an executable check |
122
+ | `gate_embodiment` | the agent has a body when it needs one |
123
+ | `gate_slop` | durable artifacts do not read like slop |
124
+ | `gate_wiki` | the wiki is linked, indexed, and its atoms carry their contract |
125
+ | `gate_docs` | generated doc sections match their source |
126
+
127
+ <!-- microwave:gates end -->
128
+
129
+ This table is generated from the gates themselves by `gates/docgen.py` and
130
+ cannot go stale: `gate_docs` fails the build if it drifts from the code
131
+ (ADR-022). The slop bank (`slop/slop-rules.csv`) ships as a generic starter and
132
+ takes your org's own rows; the mechanism does not change.
133
+
134
+ Every gate rejects with an actionable message; you fix and re-run. Gates check
135
+ form; substance is attacked by the **devil loop** (`flows/devil-loop.md`): a
136
+ fresh agent session with no creation context reviews every full-path creation
137
+ adversarially, round after round, until it finds nothing. **One single human
138
+ point**: the gatekeeper, only on the full path, judging only cards with a
139
+ clean devil report. On the fast path, green gates = `gates/activate.py`,
140
+ nobody to wait for.
141
+
142
+ Rules are enforced at the harness level, the way a coding agent is denied
143
+ reading your `.env`: the system refuses, goodwill is not involved. Shipped as
144
+ artifacts: example permission deny-rules (`harness/`), a pre-commit hook that
145
+ runs the gates (`hooks/`), a CI workflow (`.github/workflows/gates.yml`) and
146
+ `CODEOWNERS` on the protected space. One thing files cannot carry: enable
147
+ branch protection on your host (the installer prints the command). Rules are
148
+ inviolable in execution and amendable only through process
149
+ (`flows/amend-rule.md`): a constitution, not a dogma.
150
+
151
+ ## Agents as apps
152
+
153
+ An agent that can do damage is not done until it has a body (a read-only
154
+ one may stay bodiless): pass 1 generates its desktop presence: an icon, a short name, a themed terminal profile, a launcher. These
155
+ are **terminals dressed as apps, not apps replacing the terminal**: full
156
+ terminal power, zero anonymity. With five sessions open in parallel you know
157
+ who is who at a glance. One identity manifest, one adapter per OS
158
+ (Windows Terminal + PowerShell, iTerm2/Terminal.app, freedesktop). The
159
+ Windows adapter is the tested reference; **macOS and Linux adapters are
160
+ experimental (written, not yet run on real machines): testing one takes five
161
+ minutes and a report is a welcome first contribution.** See
162
+ `docs/embodiment.md`.
163
+
164
+ ## Install (one line)
165
+
166
+ ```powershell
167
+ # Windows (PowerShell 7+), from your repo:
168
+ irm https://raw.githubusercontent.com/microphage-create/microwave-method/main/install/bootstrap.ps1 | iex
169
+ ```
170
+
171
+ ```bash
172
+ # macOS / Linux, from your repo:
173
+ curl -fsSL https://raw.githubusercontent.com/microphage-create/microwave-method/main/install/bootstrap.sh | bash
174
+ ```
175
+
176
+ Prerequisites: `git` and Python 3.10+, nothing else (stdlib only). Per-OS
177
+ walkthrough, troubleshooting and uninstall: `docs/install.md`. The generated
178
+ reference (flows, gates, decisions) is `docs/reference.md`.
179
+
180
+ This copies the flows, templates, technique banks, slop rules, gates,
181
+ embodiment tooling, harness examples and hooks into your repo, wires the
182
+ pre-commit hook, and drops the CI workflow and a CODEOWNERS placeholder. Finish the hardening by enabling
183
+ branch protection (the installer prints the command).
184
+
185
+ Then start where every real organization starts: with what already exists:
186
+ open your coding agent and say *"run the Microwave adopt flow"*. It scans
187
+ wherever your agents sleep (`.claude/`, prompt folders, repos), archives one
188
+ inventory entry per artifact found, and writes the shopping list of
189
+ migrations (`wiki/_archive/BACKLOG.md`). Migrating an archived agent through
190
+ *"run the Microwave create-agent flow"* is the cheapest creation you will
191
+ ever run: the entry is the elicitation input.
192
+
193
+ ## The economics, honestly
194
+
195
+ - Reading context dominates agent cost: **76.1% of operation tokens** in
196
+ measured coding sessions (SWE-Pruner, arXiv:2601.16746).
197
+ - Static context files alone are disputed: one study measured −28.6% runtime
198
+ (arXiv:2601.20404), two replications found no correctness effect
199
+ (arXiv:2602.11988, arXiv:2607.27250). We do not sell that number.
200
+ - What holds: **continuously refined context beats static context** (33.0% vs
201
+ 28.3% resolution, p<0.001, arXiv:2606.20512). It is the *governed upkeep* of
202
+ context that pays, not the file. That upkeep is precisely what this method
203
+ automates, and what your provider's prompt cache (0.1x read price) turns into
204
+ savings across sessions and agents.
205
+
206
+ Measure your own numbers: the method instruments itself (see `docs/method.md`).
207
+
208
+ ## Status
209
+
210
+ Extracted from a system operated daily since early 2026 by its author (45+
211
+ active skills, a 4-generation governed rule corpus, 300+ knowledge atoms on a
212
+ single product). Bootstrapped light, self-hosting as soon as the factory runs:
213
+ Microwave's next module is created by Microwave.
214
+
215
+ MIT. See `NOTICE.md` for attributions.
@@ -0,0 +1,28 @@
1
+ # Security policy
2
+
3
+ ## Reporting a vulnerability
4
+
5
+ Use GitHub private vulnerability reporting on this repository (Security tab
6
+ > "Report a vulnerability"). Please do not open public issues for
7
+ exploitable findings. You will get an acknowledgment within 72 hours.
8
+
9
+ ## Scope
10
+
11
+ The installers (`install/`), the git hook (`hooks/`), the gates (`gates/`)
12
+ and the embodiment adapters (`embodiment/`) run on contributor machines:
13
+ anything that lets a crafted agent card, wiki atom, or CSV rule row execute
14
+ unintended code or write outside the repository is in scope. The YAML-subset
15
+ parser (`gates/_lib.py`) processes untrusted card content and is in scope.
16
+
17
+ ## Hardening notes for users
18
+
19
+ - The one-line installers clone the `main` branch. For a reproducible,
20
+ auditable install, clone a tagged release and run `install/install.sh`
21
+ (or `.ps1`) from it instead of piping the bootstrap.
22
+ - `embodiment.launch` is validated against shell metacharacters by
23
+ `gate_schema` and re-validated by `embody.py`; adapters escape identity
24
+ strings anyway (defense in depth).
25
+
26
+ ## Supported versions
27
+
28
+ Only the latest release and `main` are supported.