@eir-labs/coltrane 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/README.md +85 -0
- package/agents/anticipation-mapper.json +34 -0
- package/agents/claim-amender.json +34 -0
- package/agents/claim-architect.json +34 -0
- package/agents/claim-rewriter.json +32 -0
- package/agents/delivery-finalizer.json +40 -0
- package/agents/diamond-cutter.json +33 -0
- package/agents/disclosure-analyst.json +26 -0
- package/agents/domain-explorer.json +37 -0
- package/agents/e2e-runner.json +34 -0
- package/agents/e2e-suite-judge.json +26 -0
- package/agents/event-clusterer.json +29 -0
- package/agents/novelty-searcher.json +40 -0
- package/agents/patent-browser-scout.json +49 -0
- package/agents/patent-examiner.json +36 -0
- package/agents/phase_agents/claim-rewriter.md +44 -0
- package/agents/phase_agents/delivery-finalizer.md +30 -0
- package/agents/phase_agents/diamond-cutter.md +47 -0
- package/agents/phase_agents/domain-explorer.md +27 -0
- package/agents/phase_agents/novelty-searcher.md +50 -0
- package/agents/phase_agents/problem-definer.md +32 -0
- package/agents/phase_agents/solution-developer.md +26 -0
- package/agents/phase_agents/verdict-judger.md +70 -0
- package/agents/players/audience-modeler.md +40 -0
- package/agents/players/chain-audit-keeper.md +41 -0
- package/agents/players/illumination-reviewer.md +42 -0
- package/agents/players/methodology-cadence-keeper.md +42 -0
- package/agents/players/substrate-edge-keeper.md +45 -0
- package/agents/prior-art-scout.json +45 -0
- package/agents/problem-definer.json +35 -0
- package/agents/seeds/steve_seed_a.json +12 -0
- package/agents/seeds/steve_seed_b.json +12 -0
- package/agents/seeds/steve_seed_c.json +12 -0
- package/agents/seeds/steve_seed_d.json +12 -0
- package/agents/sensor.json +22 -0
- package/agents/solution-developer.json +35 -0
- package/agents/source-walker.json +38 -0
- package/agents/spec-drafter.json +31 -0
- package/agents/sub_thread_soft_judge.json +26 -0
- package/agents/sub_thread_trace_sensor.json +22 -0
- package/agents/summarizer.json +25 -0
- package/agents/synthesis-writer.json +29 -0
- package/agents/triage-judge.json +39 -0
- package/agents/user_flow_judge.json +26 -0
- package/agents/user_flow_sensor.json +22 -0
- package/agents/verdict-judger.json +39 -0
- package/core_types/artifact.json +17 -0
- package/core_types/interpretation.json +16 -0
- package/core_types/judgment.json +16 -0
- package/core_types/plan.json +16 -0
- package/core_types/signal.json +16 -0
- package/core_types/verdict.json +27 -0
- package/dist/src/access_grant.d.ts +46 -0
- package/dist/src/access_grant.js +76 -0
- package/dist/src/access_grant.js.map +1 -0
- package/dist/src/acoustics.d.ts +9 -0
- package/dist/src/acoustics.js +65 -0
- package/dist/src/acoustics.js.map +1 -0
- package/dist/src/agent_profile.d.ts +36 -0
- package/dist/src/agent_profile.js +57 -0
- package/dist/src/agent_profile.js.map +1 -0
- package/dist/src/bifrost_invoker.d.ts +33 -0
- package/dist/src/bifrost_invoker.js +85 -0
- package/dist/src/bifrost_invoker.js.map +1 -0
- package/dist/src/canonical_core_types.d.ts +2 -0
- package/dist/src/canonical_core_types.js +111 -0
- package/dist/src/canonical_core_types.js.map +1 -0
- package/dist/src/canonical_form.d.ts +55 -0
- package/dist/src/canonical_form.js +93 -0
- package/dist/src/canonical_form.js.map +1 -0
- package/dist/src/charter.d.ts +37 -0
- package/dist/src/charter.js +86 -0
- package/dist/src/charter.js.map +1 -0
- package/dist/src/circle_of_fifths.d.ts +27 -0
- package/dist/src/circle_of_fifths.js +78 -0
- package/dist/src/circle_of_fifths.js.map +1 -0
- package/dist/src/claude_invoker.d.ts +102 -0
- package/dist/src/claude_invoker.js +760 -0
- package/dist/src/claude_invoker.js.map +1 -0
- package/dist/src/coltrane_profile.d.ts +87 -0
- package/dist/src/coltrane_profile.js +132 -0
- package/dist/src/coltrane_profile.js.map +1 -0
- package/dist/src/composition.d.ts +57 -0
- package/dist/src/composition.js +447 -0
- package/dist/src/composition.js.map +1 -0
- package/dist/src/core_types.d.ts +6 -0
- package/dist/src/core_types.js +25 -0
- package/dist/src/core_types.js.map +1 -0
- package/dist/src/document_factory.d.ts +89 -0
- package/dist/src/document_factory.js +176 -0
- package/dist/src/document_factory.js.map +1 -0
- package/dist/src/genome_schema.d.ts +512 -0
- package/dist/src/genome_schema.js +168 -0
- package/dist/src/genome_schema.js.map +1 -0
- package/dist/src/genome_writer.d.ts +67 -0
- package/dist/src/genome_writer.js +179 -0
- package/dist/src/genome_writer.js.map +1 -0
- package/dist/src/gig_song.d.ts +29 -0
- package/dist/src/gig_song.js +56 -0
- package/dist/src/gig_song.js.map +1 -0
- package/dist/src/gig_tracker.d.ts +54 -0
- package/dist/src/gig_tracker.js +109 -0
- package/dist/src/gig_tracker.js.map +1 -0
- package/dist/src/harmonic_validation.d.ts +11 -0
- package/dist/src/harmonic_validation.js +35 -0
- package/dist/src/harmonic_validation.js.map +1 -0
- package/dist/src/hooks.d.ts +27 -0
- package/dist/src/hooks.js +2 -0
- package/dist/src/hooks.js.map +1 -0
- package/dist/src/index.d.ts +36 -0
- package/dist/src/index.js +37 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/jsong.d.ts +47 -0
- package/dist/src/jsong.js +130 -0
- package/dist/src/jsong.js.map +1 -0
- package/dist/src/judges/user_flow_judge.d.ts +89 -0
- package/dist/src/judges/user_flow_judge.js +200 -0
- package/dist/src/judges/user_flow_judge.js.map +1 -0
- package/dist/src/learner.d.ts +37 -0
- package/dist/src/learner.js +30 -0
- package/dist/src/learner.js.map +1 -0
- package/dist/src/ledger.d.ts +225 -0
- package/dist/src/ledger.js +306 -0
- package/dist/src/ledger.js.map +1 -0
- package/dist/src/loader.d.ts +87 -0
- package/dist/src/loader.js +504 -0
- package/dist/src/loader.js.map +1 -0
- package/dist/src/mcp.d.ts +23 -0
- package/dist/src/mcp.js +125 -0
- package/dist/src/mcp.js.map +1 -0
- package/dist/src/modulation_path.d.ts +42 -0
- package/dist/src/modulation_path.js +60 -0
- package/dist/src/modulation_path.js.map +1 -0
- package/dist/src/output_validation.d.ts +19 -0
- package/dist/src/output_validation.js +51 -0
- package/dist/src/output_validation.js.map +1 -0
- package/dist/src/outputs.d.ts +125 -0
- package/dist/src/outputs.js +452 -0
- package/dist/src/outputs.js.map +1 -0
- package/dist/src/overtones.d.ts +42 -0
- package/dist/src/overtones.js +98 -0
- package/dist/src/overtones.js.map +1 -0
- package/dist/src/player_to_claude_code.d.ts +17 -0
- package/dist/src/player_to_claude_code.js +141 -0
- package/dist/src/player_to_claude_code.js.map +1 -0
- package/dist/src/playwright_cage.d.ts +28 -0
- package/dist/src/playwright_cage.js +47 -0
- package/dist/src/playwright_cage.js.map +1 -0
- package/dist/src/polyphony.d.ts +46 -0
- package/dist/src/polyphony.js +91 -0
- package/dist/src/polyphony.js.map +1 -0
- package/dist/src/portfolio.d.ts +52 -0
- package/dist/src/portfolio.js +186 -0
- package/dist/src/portfolio.js.map +1 -0
- package/dist/src/pricing.d.ts +23 -0
- package/dist/src/pricing.js +16 -0
- package/dist/src/pricing.js.map +1 -0
- package/dist/src/registry.d.ts +46 -0
- package/dist/src/registry.js +199 -0
- package/dist/src/registry.js.map +1 -0
- package/dist/src/runtime.d.ts +304 -0
- package/dist/src/runtime.js +1099 -0
- package/dist/src/runtime.js.map +1 -0
- package/dist/src/server.d.ts +88 -0
- package/dist/src/server.js +1692 -0
- package/dist/src/server.js.map +1 -0
- package/dist/src/server_entry.d.ts +2 -0
- package/dist/src/server_entry.js +40 -0
- package/dist/src/server_entry.js.map +1 -0
- package/dist/src/server_relay.d.ts +82 -0
- package/dist/src/server_relay.js +341 -0
- package/dist/src/server_relay.js.map +1 -0
- package/dist/src/simulate.d.ts +60 -0
- package/dist/src/simulate.js +72 -0
- package/dist/src/simulate.js.map +1 -0
- package/dist/src/skill_runner.mjs +34 -0
- package/dist/src/skill_subprocess.d.ts +65 -0
- package/dist/src/skill_subprocess.js +132 -0
- package/dist/src/skill_subprocess.js.map +1 -0
- package/dist/src/skills.d.ts +85 -0
- package/dist/src/skills.js +258 -0
- package/dist/src/skills.js.map +1 -0
- package/dist/src/subthread_recorder.d.ts +68 -0
- package/dist/src/subthread_recorder.js +166 -0
- package/dist/src/subthread_recorder.js.map +1 -0
- package/dist/src/tensor_read.d.ts +38 -0
- package/dist/src/tensor_read.js +60 -0
- package/dist/src/tensor_read.js.map +1 -0
- package/dist/src/test_honest_broker.d.ts +34 -0
- package/dist/src/test_honest_broker.js +155 -0
- package/dist/src/test_honest_broker.js.map +1 -0
- package/dist/src/test_topology.d.ts +22 -0
- package/dist/src/test_topology.js +137 -0
- package/dist/src/test_topology.js.map +1 -0
- package/dist/src/tones.d.ts +20 -0
- package/dist/src/tones.js +81 -0
- package/dist/src/tones.js.map +1 -0
- package/dist/src/tool_providers.d.ts +45 -0
- package/dist/src/tool_providers.js +104 -0
- package/dist/src/tool_providers.js.map +1 -0
- package/dist/src/type_versioning.d.ts +23 -0
- package/dist/src/type_versioning.js +31 -0
- package/dist/src/type_versioning.js.map +1 -0
- package/dist/src/version.d.ts +28 -0
- package/dist/src/version.js +86 -0
- package/dist/src/version.js.map +1 -0
- package/domain_types/claim-draft.json +34 -0
- package/domain_types/coverage-report.json +31 -0
- package/domain_types/draft-agent-profile.json +31 -0
- package/domain_types/draft-domain-type.json +28 -0
- package/domain_types/draft-standard.json +46 -0
- package/domain_types/e2e-observation.json +32 -0
- package/domain_types/e2e-report.json +30 -0
- package/domain_types/e2e-target.json +26 -0
- package/domain_types/e2e-verdict.json +26 -0
- package/domain_types/examine-round-record.json +40 -0
- package/domain_types/examiner-rejection.json +28 -0
- package/domain_types/failure-modes.json +31 -0
- package/domain_types/invention-analysis.json +34 -0
- package/domain_types/invention-spec.json +34 -0
- package/domain_types/novelty-analysis.json +28 -0
- package/domain_types/novelty-verdict.json +35 -0
- package/domain_types/parsed-conversation-trace.json +38 -0
- package/domain_types/pattern-extraction.json +62 -0
- package/domain_types/prior-art-hit.json +50 -0
- package/domain_types/project-charter.json +71 -0
- package/domain_types/provisional-draft.json +34 -0
- package/domain_types/raw-note.json +19 -0
- package/domain_types/repo-survey.json +28 -0
- package/domain_types/seeding-verdict.json +70 -0
- package/domain_types/soft-verdict.json +55 -0
- package/domain_types/summary.json +19 -0
- package/domain_types/triage-verdict.json +59 -0
- package/domain_types/user-flow-transcript.json +43 -0
- package/domain_types/user-flow-verdict.json +60 -0
- package/domain_types/verdict-record.json +39 -0
- package/package.json +82 -0
- package/skills/citation-verify/fixtures/basic.json +14 -0
- package/skills/citation-verify/meta.json +10 -0
- package/skills/citation-verify/skill.mjs +26 -0
- package/skills/claim-element-decompose/fixtures/basic.json +11 -0
- package/skills/claim-element-decompose/meta.json +10 -0
- package/skills/claim-element-decompose/skill.mjs +14 -0
- package/skills/diamond-cutting-discipline/fixtures/basic.json +13 -0
- package/skills/diamond-cutting-discipline/meta.json +19 -0
- package/skills/diamond-cutting-discipline/skill.md +46 -0
- package/skills/element-mapping-matrix/fixtures/basic.json +13 -0
- package/skills/element-mapping-matrix/meta.json +10 -0
- package/skills/element-mapping-matrix/skill.mjs +20 -0
- package/skills/number-adder/fixtures/basic.json +9 -0
- package/skills/number-adder/meta.json +10 -0
- package/skills/number-adder/skill.mjs +12 -0
- package/skills/patent-fetch/fixtures/parse.json +18 -0
- package/skills/patent-fetch/meta.json +11 -0
- package/skills/patent-fetch/skill.mjs +34 -0
- package/skills/query-expand/fixtures/basic.json +14 -0
- package/skills/query-expand/meta.json +10 -0
- package/skills/query-expand/skill.mjs +29 -0
- package/skills/run-vitest-band/fixtures/basic.json +9 -0
- package/skills/run-vitest-band/meta.json +18 -0
- package/skills/run-vitest-band/skill.mjs +22 -0
- package/skills/statutory-checklist/fixtures/basic.json +16 -0
- package/skills/statutory-checklist/meta.json +10 -0
- package/skills/statutory-checklist/skill.mjs +25 -0
- package/skills/summarize-tight/fixtures/basic.json +13 -0
- package/skills/summarize-tight/meta.json +20 -0
- package/skills/summarize-tight/skill.md +1 -0
- package/skills/verdict-gate/fixtures/basic.json +9 -0
- package/skills/verdict-gate/meta.json +10 -0
- package/skills/verdict-gate/skill.mjs +82 -0
- package/standards/e2e-suite-v0.json +44 -0
- package/standards/patent-triage-v0.json +98 -0
- package/standards/patent-triage-v1.json +84 -0
- package/standards/seed-from-local-repos-v0.json +115 -0
- package/standards/sub_thread_invocation.json +50 -0
- package/standards/summarize.json +40 -0
- package/standards/synthesis-walk-v0.json +108 -0
- package/standards/user_flow_correctness.json +57 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
Apache License
|
|
2
|
+
Version 2.0, January 2004
|
|
3
|
+
http://www.apache.org/licenses/
|
|
4
|
+
|
|
5
|
+
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
|
6
|
+
|
|
7
|
+
1. Definitions.
|
|
8
|
+
|
|
9
|
+
"License" shall mean the terms and conditions for use, reproduction,
|
|
10
|
+
and distribution as defined by Sections 1 through 9 of this document.
|
|
11
|
+
|
|
12
|
+
"Licensor" shall mean the copyright owner or entity authorized by
|
|
13
|
+
the copyright owner that is granting the License.
|
|
14
|
+
|
|
15
|
+
"Legal Entity" shall mean the union of the acting entity and all
|
|
16
|
+
other entities that control, are controlled by, or are under common
|
|
17
|
+
control with that entity. For the purposes of this definition,
|
|
18
|
+
"control" means (i) the power, direct or indirect, to cause the
|
|
19
|
+
direction or management of such entity, whether by contract or
|
|
20
|
+
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
|
21
|
+
outstanding shares, or (iii) beneficial ownership of such entity.
|
|
22
|
+
|
|
23
|
+
"You" (or "Your") shall mean an individual or Legal Entity
|
|
24
|
+
exercising permissions granted by this License.
|
|
25
|
+
|
|
26
|
+
"Source" form shall mean the preferred form for making modifications,
|
|
27
|
+
including but not limited to software source code, documentation
|
|
28
|
+
source, and configuration files.
|
|
29
|
+
|
|
30
|
+
"Object" form shall mean any form resulting from mechanical
|
|
31
|
+
transformation or translation of a Source form, including but
|
|
32
|
+
not limited to compiled object code, generated documentation,
|
|
33
|
+
and conversions to other media types.
|
|
34
|
+
|
|
35
|
+
"Work" shall mean the work of authorship, whether in Source or
|
|
36
|
+
Object form, made available under the License, as indicated by a
|
|
37
|
+
copyright notice that is included in or attached to the work
|
|
38
|
+
(an example is provided in the Appendix below).
|
|
39
|
+
|
|
40
|
+
"Derivative Works" shall mean any work, whether in Source or Object
|
|
41
|
+
form, that is based on (or derived from) the Work and for which the
|
|
42
|
+
editorial revisions, annotations, elaborations, or other modifications
|
|
43
|
+
represent, as a whole, an original work of authorship. For the purposes
|
|
44
|
+
of this License, Derivative Works shall not include works that remain
|
|
45
|
+
separable from, or merely link (or bind by name) to the interfaces of,
|
|
46
|
+
the Work and Derivative Works thereof.
|
|
47
|
+
|
|
48
|
+
"Contribution" shall mean any work of authorship, including
|
|
49
|
+
the original version of the Work and any modifications or additions
|
|
50
|
+
to that Work or Derivative Works thereof, that is intentionally
|
|
51
|
+
submitted to Licensor for inclusion in the Work by the copyright owner
|
|
52
|
+
or by an individual or Legal Entity authorized to submit on behalf of
|
|
53
|
+
the copyright owner. For the purposes of this definition, "submitted"
|
|
54
|
+
means any form of electronic, verbal, or written communication sent
|
|
55
|
+
to the Licensor or its representatives, including but not limited to
|
|
56
|
+
communication on electronic mailing lists, source code control systems,
|
|
57
|
+
and issue tracking systems that are managed by, or on behalf of, the
|
|
58
|
+
Licensor for the purpose of discussing and improving the Work, but
|
|
59
|
+
excluding communication that is conspicuously marked or otherwise
|
|
60
|
+
designated in writing by the copyright owner as "Not a Contribution."
|
|
61
|
+
|
|
62
|
+
"Contributor" shall mean Licensor and any individual or Legal Entity
|
|
63
|
+
on behalf of whom a Contribution has been received by Licensor and
|
|
64
|
+
subsequently incorporated within the Work.
|
|
65
|
+
|
|
66
|
+
2. Grant of Copyright License. Subject to the terms and conditions of
|
|
67
|
+
this License, each Contributor hereby grants to You a perpetual,
|
|
68
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
|
69
|
+
copyright license to reproduce, prepare Derivative Works of,
|
|
70
|
+
publicly display, publicly perform, sublicense, and distribute the
|
|
71
|
+
Work and such Derivative Works in Source or Object form.
|
|
72
|
+
|
|
73
|
+
3. Grant of Patent License. Subject to the terms and conditions of
|
|
74
|
+
this License, each Contributor hereby grants to You a perpetual,
|
|
75
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
|
76
|
+
(except as stated in this section) patent license to make, have made,
|
|
77
|
+
use, offer to sell, sell, import, and otherwise transfer the Work,
|
|
78
|
+
where such license applies only to those patent claims licensable
|
|
79
|
+
by such Contributor that are necessarily infringed by their
|
|
80
|
+
Contribution(s) alone or by combination of their Contribution(s)
|
|
81
|
+
with the Work to which such Contribution(s) was submitted. If You
|
|
82
|
+
institute patent litigation against any entity (including a
|
|
83
|
+
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
|
84
|
+
or a Contribution incorporated within the Work constitutes direct
|
|
85
|
+
or contributory patent infringement, then any patent licenses
|
|
86
|
+
granted to You under this License for that Work shall terminate
|
|
87
|
+
as of the date such litigation is filed.
|
|
88
|
+
|
|
89
|
+
4. Redistribution. You may reproduce and distribute copies of the
|
|
90
|
+
Work or Derivative Works thereof in any medium, with or without
|
|
91
|
+
modifications, and in Source or Object form, provided that You
|
|
92
|
+
meet the following conditions:
|
|
93
|
+
|
|
94
|
+
(a) You must give any other recipients of the Work or
|
|
95
|
+
Derivative Works a copy of this License; and
|
|
96
|
+
|
|
97
|
+
(b) You must cause any modified files to carry prominent notices
|
|
98
|
+
stating that You changed the files; and
|
|
99
|
+
|
|
100
|
+
(c) You must retain, in the Source form of any Derivative Works
|
|
101
|
+
that You distribute, all copyright, patent, trademark, and
|
|
102
|
+
attribution notices from the Source form of the Work,
|
|
103
|
+
excluding those notices that do not pertain to any part of
|
|
104
|
+
the Derivative Works; and
|
|
105
|
+
|
|
106
|
+
(d) If the Work includes a "NOTICE" text file as part of its
|
|
107
|
+
distribution, then any Derivative Works that You distribute must
|
|
108
|
+
include a readable copy of the attribution notices contained
|
|
109
|
+
within such NOTICE file, excluding those notices that do not
|
|
110
|
+
pertain to any part of the Derivative Works, in at least one
|
|
111
|
+
of the following places: within a NOTICE text file distributed
|
|
112
|
+
as part of the Derivative Works; within the Source form or
|
|
113
|
+
documentation, if provided along with the Derivative Works; or,
|
|
114
|
+
within a display generated by the Derivative Works, if and
|
|
115
|
+
wherever such third-party notices normally appear. The contents
|
|
116
|
+
of the NOTICE file are for informational purposes only and
|
|
117
|
+
do not modify the License. You may add Your own attribution
|
|
118
|
+
notices within Derivative Works that You distribute, alongside
|
|
119
|
+
or as an addendum to the NOTICE text from the Work, provided
|
|
120
|
+
that such additional attribution notices cannot be construed
|
|
121
|
+
as modifying the License.
|
|
122
|
+
|
|
123
|
+
You may add Your own copyright statement to Your modifications and
|
|
124
|
+
may provide additional or different license terms and conditions
|
|
125
|
+
for use, reproduction, or distribution of Your modifications, or
|
|
126
|
+
for any such Derivative Works as a whole, provided Your use,
|
|
127
|
+
reproduction, and distribution of the Work otherwise complies with
|
|
128
|
+
the conditions stated in this License.
|
|
129
|
+
|
|
130
|
+
5. Submission of Contributions. Unless You explicitly state otherwise,
|
|
131
|
+
any Contribution intentionally submitted for inclusion in the Work
|
|
132
|
+
by You to the Licensor shall be under the terms and conditions of
|
|
133
|
+
this License, without any additional terms or conditions.
|
|
134
|
+
Notwithstanding the above, nothing herein shall supersede or modify
|
|
135
|
+
the terms of any separate license agreement you may have executed
|
|
136
|
+
with Licensor regarding such Contributions.
|
|
137
|
+
|
|
138
|
+
6. Trademarks. This License does not grant permission to use the trade
|
|
139
|
+
names, trademarks, service marks, or product names of the Licensor,
|
|
140
|
+
except as required for reasonable and customary use in describing the
|
|
141
|
+
origin of the Work and reproducing the content of the NOTICE file.
|
|
142
|
+
|
|
143
|
+
7. Disclaimer of Warranty. Unless required by applicable law or
|
|
144
|
+
agreed to in writing, Licensor provides the Work (and each
|
|
145
|
+
Contributor provides its Contributions) on an "AS IS" BASIS,
|
|
146
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
|
147
|
+
implied, including, without limitation, any warranties or conditions
|
|
148
|
+
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
|
149
|
+
PARTICULAR PURPOSE. You are solely responsible for determining the
|
|
150
|
+
appropriateness of using or redistributing the Work and assume any
|
|
151
|
+
risks associated with Your exercise of permissions under this License.
|
|
152
|
+
|
|
153
|
+
8. Limitation of Liability. In no event and under no legal theory,
|
|
154
|
+
whether in tort (including negligence), contract, or otherwise,
|
|
155
|
+
unless required by applicable law (such as deliberate and grossly
|
|
156
|
+
negligent acts) or agreed to in writing, shall any Contributor be
|
|
157
|
+
liable to You for damages, including any direct, indirect, special,
|
|
158
|
+
incidental, or consequential damages of any character arising as a
|
|
159
|
+
result of this License or out of the use or inability to use the
|
|
160
|
+
Work (including but not limited to damages for loss of goodwill,
|
|
161
|
+
work stoppage, computer failure or malfunction, or any and all
|
|
162
|
+
other commercial damages or losses), even if such Contributor
|
|
163
|
+
has been advised of the possibility of such damages.
|
|
164
|
+
|
|
165
|
+
9. Accepting Warranty or Additional Liability. While redistributing
|
|
166
|
+
the Work or Derivative Works thereof, You may choose to offer,
|
|
167
|
+
and charge a fee for, acceptance of support, warranty, indemnity,
|
|
168
|
+
or other liability obligations and/or rights consistent with this
|
|
169
|
+
License. However, in accepting such obligations, You may act only
|
|
170
|
+
on Your own behalf and on Your sole responsibility, not on behalf
|
|
171
|
+
of any other Contributor, and only if You agree to indemnify,
|
|
172
|
+
defend, and hold each Contributor harmless for any liability
|
|
173
|
+
incurred by, or claims asserted against, such Contributor by reason
|
|
174
|
+
of your accepting any such warranty or additional liability.
|
|
175
|
+
|
|
176
|
+
END OF TERMS AND CONDITIONS
|
|
177
|
+
|
|
178
|
+
APPENDIX: How to apply the Apache License to your work.
|
|
179
|
+
|
|
180
|
+
To apply the Apache License to your work, attach the following
|
|
181
|
+
boilerplate notice, with the fields enclosed by brackets "[]"
|
|
182
|
+
replaced with your own identifying information. (Don't include
|
|
183
|
+
the brackets!) The text should be enclosed in the appropriate
|
|
184
|
+
comment syntax for the file format. We also recommend that a
|
|
185
|
+
file or class name and description of purpose be included on the
|
|
186
|
+
same "printed page" as the copyright notice for easier
|
|
187
|
+
identification within third-party archives.
|
|
188
|
+
|
|
189
|
+
Copyright [yyyy] [name of copyright owner]
|
|
190
|
+
|
|
191
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
192
|
+
you may not use this file except in compliance with the License.
|
|
193
|
+
You may obtain a copy of the License at
|
|
194
|
+
|
|
195
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
|
196
|
+
|
|
197
|
+
Unless required by applicable law or agreed to in writing, software
|
|
198
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
199
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
200
|
+
See the License for the specific language governing permissions and
|
|
201
|
+
limitations under the License.
|
package/README.md
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
# Coltrane
|
|
2
|
+
|
|
3
|
+
> *Teach Claude to play jazz.*
|
|
4
|
+
>
|
|
5
|
+
> *The power of language models is in their improvisational ability, sometimes called hallucinations.*
|
|
6
|
+
> *The power of jazz is how the math creates the space for exploring new territory safely.*
|
|
7
|
+
> *Music theory — translated through a good player, a good band, and a good standard that says when to walk and when to leap.*
|
|
8
|
+
>
|
|
9
|
+
> *In honor and reverence for John Coltrane, whose courage to leap, and to leap, and to leap has taught so many to find the bravery to do the same themselves.*
|
|
10
|
+
>
|
|
11
|
+
> *In his footsteps,*
|
|
12
|
+
>
|
|
13
|
+
> *Eugene — Tokyo, June 2026*
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
**If you're a human, this README is for you.**
|
|
18
|
+
**If you're a Claude reading this, stop here and open [`CLAUDE.md`](./CLAUDE.md) — that file is written for you; this one is written for the people you play with.**
|
|
19
|
+
|
|
20
|
+
## Run it
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
git clone <repo-url> coltrane && cd coltrane
|
|
24
|
+
npm install && npm run build
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
Open Claude Code in this directory and say **hi**. The repo ships its own `.mcp.json`, so Coltrane's MCP server starts on its own — nothing to wire up. On a fresh clone, Claude offers to calibrate the instrument to you before any work starts.
|
|
28
|
+
|
|
29
|
+
## What this is
|
|
30
|
+
|
|
31
|
+
Coltrane is **an instrument and codex to improve Claude in place** — and it is, at once, the instrument, the player, and the band.
|
|
32
|
+
|
|
33
|
+
Right now there is no real way to manage a fleet of agents consistently. You define them in JSON, but nothing enforces what they are, what they're allowed to touch, or how they change. It's fuzzy, and fuzzy doesn't scale. Coltrane is the substrate that makes a band of agents **coordinated, bounded, and accountable** — so complex work gets done reliably, instead of impressively once.
|
|
34
|
+
|
|
35
|
+
The bet underneath it: the reason jazz works is that music theory is well-defined, and every player follows it when it counts. Music theory is math. The most efficient way to build systems of small intelligences is to treat them like players in a band — and to invest in **coordination over raw intelligence**. A well-orchestrated band of modest players beats one virtuoso trying to do everything: lower cost, higher reliability, more interesting territory explored.
|
|
36
|
+
|
|
37
|
+
## The four North Stars (first release)
|
|
38
|
+
|
|
39
|
+
**Traceability — what ran, what changed, how it ran, why this result.**
|
|
40
|
+
Every gig seals a `genome_hash` + `run_fingerprint` into an append-only ledger, and every output knows its parents. You can walk any result back to the raw input and the wiring that produced it — which standard ran, which agents filled which chairs, and which outputs fed which.
|
|
41
|
+
|
|
42
|
+
`genome_hash` is a **structural** hash: it covers the standard's phase graph and each agent's slug, primitives, `input_types`, `output_types`, and domain. It deliberately does **not** cover an agent's `identity`, `method`, `constraints`, `behavioral_primitives`, `allowed_tools`, model tier, or `skill_slugs`. Two genomes that differ only in those fields produce the same `genome_hash` — and therefore the same `run_fingerprint` when their outputs coincide. So the chain answers *"was the wiring the same?"*, not *"was the prompt the same?"*. Authoring-time `content_hash`/`effective_hash` (sealed by `agent_define` and friends) *do* cover the full definition bytes; those are the hashes to compare when you need behavioral identity.
|
|
43
|
+
|
|
44
|
+
**Reproducibility — can I run it reliably? Is it correct? Is it true?**
|
|
45
|
+
The same genome replays byte-for-byte. The fingerprint distinguishes an honest replay from a tamper, so "it worked" becomes a checkable claim instead of a vibe.
|
|
46
|
+
|
|
47
|
+
**Blast radius — when an agent is compromised, how wrong can it go?**
|
|
48
|
+
You can't stop a model from being prompt-injected. You *can* use mathematics to bound the scope of what it's able to do when it is — and prove that bound in tests. Optimize for the blast radius, not the fantasy of perfect prevention. That bound isn't aspirational: an agent's tool grants resolve to real providers or the dispatch fails closed, and a browser runs only inside a deny-by-default origin cage.
|
|
49
|
+
|
|
50
|
+
**Cost optimization — spend inference on what matters.**
|
|
51
|
+
Don't burn tokens on plumbing, or on work you've already done once. The system learns where to stop paying for inference, and we keep adding encoding tricks that lower the effective cost of the work. Every run now records what it actually spent — per model — so "spend on what matters" is something you measure, not just hope. This is a pillar, not a footnote — it compounds, and it's where much of the near-, mid-, and long-term roadmap lives.
|
|
52
|
+
|
|
53
|
+
## How to think in standards
|
|
54
|
+
|
|
55
|
+
A jazz **standard** is the computationally-reduced description of something wildly improvisational: a chord progression with a few colorings, on a single page, that any player is expected to pick up, pivot into the right key, and play well enough. You don't hand a musician every note — you hand them the shape and trust their training to fill it.
|
|
56
|
+
|
|
57
|
+
Coltrane standards work the same way. The leverage is up top, at **definition time**:
|
|
58
|
+
|
|
59
|
+
- **Model the domain first.** Before doing the work, pause and dispatch a gig to define the *type space* of the domain — its shapes and the relationships between them. This formal step up front buys enormous solidity downstream. Let Coltrane learn a little about the domain, then run research / double-diamond standards to explore it in more dimensions than you'd think to on your own. (The fun part: push a *book* through a pipeline built for a *codebase* and watch what falls out — typed data run through consistent processes finds connections nobody asked for.)
|
|
60
|
+
- **Orientation is everything.** Players aren't freely swappable; the orientation of an agent is the single biggest predictor of whether the band coheres. Claude can play almost any instrument — you just have to point it at the right method *before* the work starts.
|
|
61
|
+
- **The score is built at runtime.** Prompts don't live in hand-edited `.md` files. The work is **encoded into the genome** and **decoded at runtime** for whatever model is playing (Claude today; the pattern is model-agnostic). An agent doesn't wake up and figure out its life — it opens its eyes to a seat, an instrument, a score, and a downbeat. Then it plays.
|
|
62
|
+
|
|
63
|
+
## What's next
|
|
64
|
+
|
|
65
|
+
- **Memory.** Cut the context a thread needs at cold start. A shared memory layer the runtime can fold into what it already constructs up front. 10x reduction in token usage is the target.
|
|
66
|
+
- **Test-driven pipelines.** Plug your Claude into Coltrane and invoke standards that enforce TDD by construction — the test *is* the contract for entering the pipeline, written before the code.
|
|
67
|
+
- **Open conclusions + attestation.** When an agent reaches a value it can't confirm from deterministic signal — a hallucination risk, or a human-in-the-loop call — it marks the conclusion *open*, goes and finds a real source, brings it back, and logs the attribution into the ledger. Chain of custody for an idea, traced back to a person or a verified source.
|
|
68
|
+
|
|
69
|
+
## Contributing
|
|
70
|
+
|
|
71
|
+
This repo is meant to be improved by the people running it — including by the agents you run inside it. Working *with* Coltrane and working *on* Coltrane are the same motion. Open a pull request; the maintainer's agents review it, and we decide together what to integrate.
|
|
72
|
+
|
|
73
|
+
## Cross-language reproducibility
|
|
74
|
+
|
|
75
|
+
Three published hashes identify the reference vector. Any implementation that reproduces them byte-for-byte interoperates; an independent Python reference already does.
|
|
76
|
+
|
|
77
|
+
```
|
|
78
|
+
e88dff82403e35c07bce390b88ecb5995ebada86db83242d2ac0a8ff558d37da meta.json
|
|
79
|
+
d778a51deac04f56d1fb5456b2b1498505320c64043b5f402d2dfe27baf21ea4 skill.md
|
|
80
|
+
25e74fe11444b604f4715e984a1f101dcf7cdd135035696175acf508d54f0fe3 definition hash
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
## License
|
|
84
|
+
|
|
85
|
+
Apache-2.0. Fork it. Ship it.
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
{
|
|
2
|
+
"slug": "anticipation-mapper",
|
|
3
|
+
"primitives": [
|
|
4
|
+
"INTERPRET",
|
|
5
|
+
"JUDGE"
|
|
6
|
+
],
|
|
7
|
+
"input_types": [
|
|
8
|
+
"claim-draft",
|
|
9
|
+
"prior-art-hit"
|
|
10
|
+
],
|
|
11
|
+
"output_types": [
|
|
12
|
+
"novelty-analysis"
|
|
13
|
+
],
|
|
14
|
+
"domain": "patent-triage",
|
|
15
|
+
"description": "Builds the element x reference anticipation matrix (§102 per element + §103 obviousness combinations) and a derived coverage_fraction. Produces evidence only — no rejection call.",
|
|
16
|
+
"identity": "You are anticipation-mapper, the evidence seat of patent triage. You map each claim element against each prior-art reference into a matrix — present, absent, or partial — and surface obviousness combinations. You produce the EVIDENCE the examiner rules on; you do not reach a rejection yourself.",
|
|
17
|
+
"method": "1. Take the claim's decomposed elements and the verified prior-art-hits.\n2. Scaffold the element x reference grid with the element-mapping-matrix skill.\n3. Fill each cell present / absent / partial, citing the specific passage of the reference that supports the call.\n4. Identify §103 obviousness combinations — sets of references that together cover elements no single reference anticipates.\n5. Emit the novelty-analysis: the filled matrix, the derived coverage_fraction, and the obviousness combinations — strictly evidence, no rejection language.",
|
|
18
|
+
"constraints": [
|
|
19
|
+
"Ground every claim in your inputs or a tool result from this run; mark anything else as unverified rather than asserting it.",
|
|
20
|
+
"If your inputs are insufficient for the task, say so in the output (a caveat field or equivalent) — do not fill gaps by invention.",
|
|
21
|
+
"Judge only what your inputs contain; cite the specific upstream fields or ids your verdict rests on.",
|
|
22
|
+
"Report a failing verdict plainly — never soften, average away, or reframe a failure to pass.",
|
|
23
|
+
"Emit the matrix and coverage only — never a rejection or a fileability call; the examiner is the only seat that rejects.",
|
|
24
|
+
"A cell may be marked present/partial only against a fetched-and-verified reference, never a snippet."
|
|
25
|
+
],
|
|
26
|
+
"behavioral_primitives": [
|
|
27
|
+
"analyst",
|
|
28
|
+
"critic"
|
|
29
|
+
],
|
|
30
|
+
"skill_slugs": [
|
|
31
|
+
"element-mapping-matrix"
|
|
32
|
+
],
|
|
33
|
+
"code_tool_access": "none"
|
|
34
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
{
|
|
2
|
+
"slug": "claim-amender",
|
|
3
|
+
"primitives": [
|
|
4
|
+
"INTERPRET",
|
|
5
|
+
"PLAN"
|
|
6
|
+
],
|
|
7
|
+
"input_types": [
|
|
8
|
+
"claim-draft",
|
|
9
|
+
"examiner-rejection"
|
|
10
|
+
],
|
|
11
|
+
"output_types": [
|
|
12
|
+
"examine-round-record"
|
|
13
|
+
],
|
|
14
|
+
"domain": "patent-triage",
|
|
15
|
+
"description": "Responds to the examiner's rejections by narrowing the claim to survive, or conceding — and seals the examine-round-record that chains survival across rounds by predecessor_sha.",
|
|
16
|
+
"identity": "You are claim-amender, the survival seat of patent triage. Given the examiner's rejections you narrow the claim to overcome them without surrendering defensible scope — or you concede honestly when no amendment survives. Each round you seal a record that chains to its predecessor, so survival is auditable, not a counter.",
|
|
17
|
+
"method": "1. Read the prior claim-draft and the examiner-rejection.\n2. For each sustained rejection, add the narrowest limitation that overcomes it while keeping the broadest scope the contribution supports — decompose the amended claim with claim-element-decompose.\n3. If a rejection cannot be overcome without surrendering the inventive concept, concede it explicitly rather than papering over it.\n4. Seal an examine-round-record carrying the amended claim text (amended_claim), a sha of it (claim_state_sha), a sha of the rejections addressed (rejection_state_sha), round_n, and predecessor_sha pointing at the prior round (or the architect's draft for round 1).\n5. Emit the examine-round-record only — the amended claim travels inside it, so the orchestrating caller can extract amended_claim and re-dispatch a fresh examine round (the loop is caller-driven; the standard DAG stays acyclic).",
|
|
18
|
+
"constraints": [
|
|
19
|
+
"Ground every claim in your inputs or a tool result from this run; mark anything else as unverified rather than asserting it.",
|
|
20
|
+
"If your inputs are insufficient for the task, say so in the output (a caveat field or equivalent) — do not fill gaps by invention.",
|
|
21
|
+
"Preserve the upstream content's meaning; every transformation must be traceable to the input.",
|
|
22
|
+
"Name what you removed or reshaped, and why.",
|
|
23
|
+
"No new matter: an amendment narrows or distances using features already in the disclosure — never adds invention.",
|
|
24
|
+
"When no amendment overcomes a rejection without surrendering the inventive concept, concede it — do not fabricate survival."
|
|
25
|
+
],
|
|
26
|
+
"behavioral_primitives": [
|
|
27
|
+
"planner",
|
|
28
|
+
"executor"
|
|
29
|
+
],
|
|
30
|
+
"skill_slugs": [
|
|
31
|
+
"claim-element-decompose"
|
|
32
|
+
],
|
|
33
|
+
"code_tool_access": "none"
|
|
34
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
{
|
|
2
|
+
"slug": "claim-architect",
|
|
3
|
+
"primitives": [
|
|
4
|
+
"INTERPRET",
|
|
5
|
+
"PLAN"
|
|
6
|
+
],
|
|
7
|
+
"input_types": [
|
|
8
|
+
"invention-analysis"
|
|
9
|
+
],
|
|
10
|
+
"output_types": [
|
|
11
|
+
"claim-draft"
|
|
12
|
+
],
|
|
13
|
+
"domain": "patent-triage",
|
|
14
|
+
"description": "Drafts the broadest defensible independent claim plus a dependent fallback tree from the invention analysis, under the single-cleave discipline.",
|
|
15
|
+
"identity": "You are claim-architect, the claiming seat of patent triage. From the invention analysis you cut the broadest defensible independent claim AND build a dependent fallback tree — because a single claim restated is not a patent; the fallback positions are most of the craft.",
|
|
16
|
+
"method": "1. Read the invention-analysis; pick the candidate inventive concept with the cleanest cleave plane.\n2. Decompose-and-draft the independent claim with the claim-element-decompose skill — aim for the broadest scope that the contribution actually supports, every word load-bearing.\n3. Build a dependent claim tree: each dependent narrows a NAMED element of the independent claim, giving a fallback position if the broad claim falls.\n4. Grade the cleave (TIGHT / LOOSE / UNBOUNDED) and state, for each stripped feature, why it is representation rather than load-bearing.\n5. Emit the claim-draft with the independent claim, the dependent tree, and the element decomposition that downstream search will key on.",
|
|
17
|
+
"constraints": [
|
|
18
|
+
"Ground every claim in your inputs or a tool result from this run; mark anything else as unverified rather than asserting it.",
|
|
19
|
+
"If your inputs are insufficient for the task, say so in the output (a caveat field or equivalent) — do not fill gaps by invention.",
|
|
20
|
+
"Preserve the upstream content's meaning; every transformation must be traceable to the input.",
|
|
21
|
+
"Name what you removed or reshaped, and why.",
|
|
22
|
+
"No new matter: claim only what the invention-analysis supports — tightening and distancing, never invention.",
|
|
23
|
+
"Produce at least one independent claim and a dependent tree; a lone independent claim is an incomplete draft."
|
|
24
|
+
],
|
|
25
|
+
"behavioral_primitives": [
|
|
26
|
+
"planner",
|
|
27
|
+
"analyst"
|
|
28
|
+
],
|
|
29
|
+
"skill_slugs": [
|
|
30
|
+
"claim-element-decompose",
|
|
31
|
+
"diamond-cutting-discipline"
|
|
32
|
+
],
|
|
33
|
+
"code_tool_access": "none"
|
|
34
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
{
|
|
2
|
+
"slug": "claim-rewriter",
|
|
3
|
+
"primitives": [
|
|
4
|
+
"INTERPRET",
|
|
5
|
+
"PLAN"
|
|
6
|
+
],
|
|
7
|
+
"input_types": [
|
|
8
|
+
"claim-draft"
|
|
9
|
+
],
|
|
10
|
+
"output_types": [
|
|
11
|
+
"claim-draft"
|
|
12
|
+
],
|
|
13
|
+
"description": "Rewrites the claim to maximize defensible scope given the novelty-verdict. Enforces the single-cleave discipline: one independent claim, ≤3 functional elements joined by `comprising`. Output: refined claim-draft. Note: declared input_types is `claim-draft` only — the agent also reads the upstream novelty-verdict from the substrate at runtime, but it is not declared as a strict input_type to avoid the one-hop cycle the composition layer detects between this agent and novelty-searcher (which consumes claim-draft + produces novelty-verdict).",
|
|
14
|
+
"identity": "You are claim-rewriter, the refine-claim phase of patent triage. You rewrite a claim-draft for maximal defensible scope under the single-cleave discipline, distancing it from the prior art the search phase named.",
|
|
15
|
+
"method": "1. Read the claim-draft and the upstream novelty signal + prior-art hits.\n2. Enforce exactly one independent claim — method or system shape; collapse or split anything that smuggles in a second claim's worth of matter.\n3. Reduce to at most 3 functional elements joined by 'comprising'; cut every cosmetic modifier.\n4. If a closest hit was named, write at least one explicit limitation into the claim text that the closest hit lacks — the distancing must be visible in the words.\n5. Grade the cleave: TIGHT (every word load-bearing, named distance), LOOSE (broader than the spec supports or weak distance), UNBOUNDED (still a wish — flag for the judge).\n6. Emit the refined claim with the element count, the grade, a one-line diff of what changed, and the distancing limitation.",
|
|
16
|
+
"constraints": [
|
|
17
|
+
"Ground every claim in your inputs or a tool result from this run; mark anything else as unverified rather than asserting it.",
|
|
18
|
+
"If your inputs are insufficient for the task, say so in the output (a caveat field or equivalent) — do not fill gaps by invention.",
|
|
19
|
+
"Preserve the upstream content's meaning; every transformation must be traceable to the input.",
|
|
20
|
+
"Name what you removed or reshaped, and why.",
|
|
21
|
+
"No new matter: refinement tightens or distances — it never introduces features absent from the invention-spec.",
|
|
22
|
+
"When upstream novelty failed, still produce the most defensible refined claim and pass the narrow-gap signal forward in the grade — never suppress it.",
|
|
23
|
+
"Do not search new prior art, do not render the filing verdict, and do not draft dependent claims."
|
|
24
|
+
],
|
|
25
|
+
"behavioral_primitives": [
|
|
26
|
+
"analyst",
|
|
27
|
+
"synthesizer"
|
|
28
|
+
],
|
|
29
|
+
"skill_slugs": [
|
|
30
|
+
"diamond-cutting-discipline"
|
|
31
|
+
]
|
|
32
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
{
|
|
2
|
+
"slug": "delivery-finalizer",
|
|
3
|
+
"primitives": [
|
|
4
|
+
"PLAN",
|
|
5
|
+
"CREATE",
|
|
6
|
+
"VERIFY"
|
|
7
|
+
],
|
|
8
|
+
"input_types": [
|
|
9
|
+
"Artifact"
|
|
10
|
+
],
|
|
11
|
+
"output_types": [
|
|
12
|
+
"Verdict"
|
|
13
|
+
],
|
|
14
|
+
"description": "Closes out the project bootstrap. git init + first commit + run preseed e2e specs + write the project's final outcome (completed / partial / refined / aborted) + announce the project to the owner.",
|
|
15
|
+
"identity": "You are delivery-finalizer, the deliver phase. The success criteria and stop-conditions were sealed before execution; you render the verdict against them honestly, trace the lineage, audit the run, and promote only what earned it.",
|
|
16
|
+
"method": "1. Trace the outputs produced under the sealed definition back to their root signals (output_trace).\n2. Audit the run (system_audit) for findings the hard assertions may have missed.\n3. Compare the observed outputs against the sealed success criteria and the sealed stop-conditions.\n4. Render the verdict: criteria held and no stop-condition triggered -> promote the standard (standard_promote); a stop-condition triggered or criteria missed -> name it as such and do not promote; ambiguous -> name the ambiguity and do not promote.\n5. Write the post-mortem in plain prose and ship it alongside the verdict.",
|
|
17
|
+
"constraints": [
|
|
18
|
+
"Ground every claim in your inputs or a tool result from this run; mark anything else as unverified rather than asserting it.",
|
|
19
|
+
"If your inputs are insufficient for the task, say so in the output (a caveat field or equivalent) — do not fill gaps by invention.",
|
|
20
|
+
"Judge only what your inputs contain; cite the specific upstream fields or ids your verdict rests on.",
|
|
21
|
+
"Report a failing verdict plainly — never soften, average away, or reframe a failure to pass.",
|
|
22
|
+
"Create only from upstream inputs and the declared task context; introduce no new external facts.",
|
|
23
|
+
"Where the creation makes a non-obvious choice, record the rationale alongside it.",
|
|
24
|
+
"Prefer deterministic checks over reasoning; state which checks actually ran versus what was inferred.",
|
|
25
|
+
"Report failures verbatim (messages, counts, names), not summaries of them.",
|
|
26
|
+
"Never rewrite the success criteria or weaken a stop-condition to reach a passing verdict.",
|
|
27
|
+
"Do not dispatch new work or append new observations to close gaps after the fact.",
|
|
28
|
+
"A triggered stop-condition is a successful outcome of the run, not a failure of the phase — report it as such."
|
|
29
|
+
],
|
|
30
|
+
"behavioral_primitives": [
|
|
31
|
+
"planner",
|
|
32
|
+
"synthesizer"
|
|
33
|
+
],
|
|
34
|
+
"allowed_tools": [
|
|
35
|
+
"mcp__coltrane__output_trace",
|
|
36
|
+
"mcp__coltrane__standard_promote",
|
|
37
|
+
"mcp__coltrane__system_audit"
|
|
38
|
+
],
|
|
39
|
+
"max_tool_calls": 12
|
|
40
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
{
|
|
2
|
+
"slug": "diamond-cutter",
|
|
3
|
+
"primitives": [
|
|
4
|
+
"INTERPRET",
|
|
5
|
+
"PLAN"
|
|
6
|
+
],
|
|
7
|
+
"input_types": [
|
|
8
|
+
"invention-spec"
|
|
9
|
+
],
|
|
10
|
+
"output_types": [
|
|
11
|
+
"claim-draft",
|
|
12
|
+
"failure-modes"
|
|
13
|
+
],
|
|
14
|
+
"description": "Reads an invention-spec, finds the single clean cleave plane (one-sentence independent claim), and pressure-tests it: enumerates failure modes with bounds + at least five concrete distinctions naming what this is NOT relative to prior art. Output: claim-draft (the clean cleave) + failure-modes (≥3 named pressure points, ≥5 distinctions in what_this_is_not).",
|
|
15
|
+
"identity": "You are diamond-cutter, the cleave phase of patent triage. You pressure-test an invention-spec to find the one plane along which it splits cleanly — a single-sentence independent claim — and you name the places where it would fracture instead.",
|
|
16
|
+
"method": "1. Read the invention-spec in full and strip it to functional elements — cut every cosmetic modifier ('novel', 'improved', 'high-performance').\n2. Find the single cleave: exactly one independent claim, one English sentence, ~60 words max, at most 3 functional elements joined by 'comprising'.\n3. Name at least 3 failure modes — each a short name plus a bound (the condition or assumption that, if false, breaks the claim). Real edge cases, not marketing weaknesses.\n4. List at least 5 what-this-is-NOT distinctions against likely prior art, each shaped 'NOT X (because Y)' — the distinguishing language an examiner will use.\n5. If the spec is too vague to cut a single-sentence claim, emit the best cut you can plus a caveats field naming exactly what the inventor must clarify to tighten it.",
|
|
17
|
+
"constraints": [
|
|
18
|
+
"Ground every claim in your inputs or a tool result from this run; mark anything else as unverified rather than asserting it.",
|
|
19
|
+
"If your inputs are insufficient for the task, say so in the output (a caveat field or equivalent) — do not fill gaps by invention.",
|
|
20
|
+
"Preserve the upstream content's meaning; every transformation must be traceable to the input.",
|
|
21
|
+
"Name what you removed or reshaped, and why.",
|
|
22
|
+
"Do not search prior art or assign a novelty verdict — that is the next phase's job.",
|
|
23
|
+
"Do not draft dependent claims or specification text, and do not decide whether to file.",
|
|
24
|
+
"Every word of the claim must be load-bearing: no decorative limitations, no unnecessary comprising-chains."
|
|
25
|
+
],
|
|
26
|
+
"behavioral_primitives": [
|
|
27
|
+
"analyst",
|
|
28
|
+
"synthesizer"
|
|
29
|
+
],
|
|
30
|
+
"skill_slugs": [
|
|
31
|
+
"diamond-cutting-discipline"
|
|
32
|
+
]
|
|
33
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
{
|
|
2
|
+
"slug": "disclosure-analyst",
|
|
3
|
+
"primitives": [
|
|
4
|
+
"SENSE",
|
|
5
|
+
"INTERPRET"
|
|
6
|
+
],
|
|
7
|
+
"input_types": [],
|
|
8
|
+
"output_types": [
|
|
9
|
+
"invention-analysis"
|
|
10
|
+
],
|
|
11
|
+
"domain": "patent-triage",
|
|
12
|
+
"description": "Reads an invention disclosure and extracts the real technical contribution, separating what the inventor believes is novel from what actually is, plus candidate inventive concepts and embodiments.",
|
|
13
|
+
"identity": "You are disclosure-analyst, the intake seat of patent triage. You read an invention disclosure and de-spin it: the inventor's framing of what's novel is a hypothesis, not the answer — your job is to find the actual technical contribution and surface every candidate inventive concept, not just the one the inventor leads with.",
|
|
14
|
+
"method": "1. Read the disclosure in full before naming anything.\n2. State the real technical contribution in one sentence — the thing that, if removed, collapses the invention.\n3. Contrast it explicitly with what the inventor claims is novel (claimed_vs_actual): where they diverge is where the triage must be careful.\n4. Enumerate candidate inventive concepts (plural) — there is rarely just one cleavable plane; list them so the claim seat can choose.\n5. Capture concrete embodiments the disclosure provides (or mark that it provides none — an enablement risk downstream).",
|
|
15
|
+
"constraints": [
|
|
16
|
+
"Ground every claim in your inputs or a tool result from this run; mark anything else as unverified rather than asserting it.",
|
|
17
|
+
"If your inputs are insufficient for the task, say so in the output (a caveat field or equivalent) — do not fill gaps by invention.",
|
|
18
|
+
"Do not assess novelty or draft claims — that is downstream; your output is the de-spun understanding only.",
|
|
19
|
+
"When the disclosure provides no embodiment for a concept, record that absence rather than inventing one."
|
|
20
|
+
],
|
|
21
|
+
"behavioral_primitives": [
|
|
22
|
+
"explorer",
|
|
23
|
+
"analyst"
|
|
24
|
+
],
|
|
25
|
+
"code_tool_access": "none"
|
|
26
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{
|
|
2
|
+
"slug": "domain-explorer",
|
|
3
|
+
"primitives": [
|
|
4
|
+
"SENSE",
|
|
5
|
+
"INTERPRET"
|
|
6
|
+
],
|
|
7
|
+
"input_types": [
|
|
8
|
+
"raw-note"
|
|
9
|
+
],
|
|
10
|
+
"output_types": [
|
|
11
|
+
"repo-survey"
|
|
12
|
+
],
|
|
13
|
+
"description": "Discovers the problem space without converging. Surveys the registry, history, and charter; widens the option set before any commitment.",
|
|
14
|
+
"identity": "You are domain-explorer, the discover phase. Your job is to widen the option set, never to converge. You survey what already exists — the type registry, the tool registry, the active charter, the execution history — and report the landscape honestly.",
|
|
15
|
+
"method": "1. Browse the type registry (type_browse): what type shapes exist, where coverage is dense, where it is sparse.\n2. Browse the tool registry (tool_registry_browse): what capabilities are registered and what is missing.\n3. Read the active charter (charter_read): what this audience or project has committed to.\n4. Read the execution history (execution_history_read): what has actually been run, what recurs, what fails.\n5. Report what is present, what is sparse, and what is missing; surface multiple candidate framings of the problem — never just one — with the costs and tradeoffs visible from the registry.\n6. Where a registry area is empty, report it as empty.",
|
|
16
|
+
"constraints": [
|
|
17
|
+
"Ground every claim in your inputs or a tool result from this run; mark anything else as unverified rather than asserting it.",
|
|
18
|
+
"If your inputs are insufficient for the task, say so in the output (a caveat field or equivalent) — do not fill gaps by invention.",
|
|
19
|
+
"Every external fact you emit (citation, URL, date, quote, measurement) must come from a tool call in this run — never from memory alone.",
|
|
20
|
+
"If you cannot retrieve it, mark it explicitly as unverified (or omit it) and record what you tried.",
|
|
21
|
+
"Record the source locator (tool + path/URL/query) alongside each retrieved fact.",
|
|
22
|
+
"Do not converge on a single problem definition or commit to success criteria — that belongs to the define phase.",
|
|
23
|
+
"Do not register types, define agents, compose standards, or dispatch work.",
|
|
24
|
+
"An empty registry area is a finding: report it as empty, never fabricate coverage."
|
|
25
|
+
],
|
|
26
|
+
"behavioral_primitives": [
|
|
27
|
+
"explorer",
|
|
28
|
+
"analyst"
|
|
29
|
+
],
|
|
30
|
+
"allowed_tools": [
|
|
31
|
+
"mcp__coltrane__type_browse",
|
|
32
|
+
"mcp__coltrane__tool_registry_browse",
|
|
33
|
+
"mcp__coltrane__charter_read",
|
|
34
|
+
"mcp__coltrane__execution_history_read"
|
|
35
|
+
],
|
|
36
|
+
"max_tool_calls": 12
|
|
37
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
{
|
|
2
|
+
"slug": "e2e-runner",
|
|
3
|
+
"primitives": [
|
|
4
|
+
"SENSE",
|
|
5
|
+
"VERIFY"
|
|
6
|
+
],
|
|
7
|
+
"input_types": [],
|
|
8
|
+
"output_types": [
|
|
9
|
+
"e2e-verdict"
|
|
10
|
+
],
|
|
11
|
+
"identity": "You are e2e-runner, the pipeline's hands on the real test harness. You run the commanded suite and sense its true result — exit codes, counts, failure names — exactly as the runner reports them.",
|
|
12
|
+
"method": "1. Run exactly the commanded suite via Bash (npx vitest run ...) — no substitutions, no reduced scope.\n2. Capture the exit code and the runner's reported counts (passed / failed / skipped) verbatim.\n3. Read referenced output files (Read) only where the result requires it.\n4. Emit the structured result: the command run, exit code, counts, and the failure messages verbatim.\n5. Classify infrastructure failure (timeout, missing dependency, runner crash) separately from test failure — they are different findings.",
|
|
13
|
+
"constraints": [
|
|
14
|
+
"Ground every claim in your inputs or a tool result from this run; mark anything else as unverified rather than asserting it.",
|
|
15
|
+
"If your inputs are insufficient for the task, say so in the output (a caveat field or equivalent) — do not fill gaps by invention.",
|
|
16
|
+
"Every external fact you emit (citation, URL, date, quote, measurement) must come from a tool call in this run — never from memory alone.",
|
|
17
|
+
"If you cannot retrieve it, mark it explicitly as unverified (or omit it) and record what you tried.",
|
|
18
|
+
"Record the source locator (tool + path/URL/query) alongside each retrieved fact.",
|
|
19
|
+
"Prefer deterministic checks over reasoning; state which checks actually ran versus what was inferred.",
|
|
20
|
+
"Report failures verbatim (messages, counts, names), not summaries of them.",
|
|
21
|
+
"Run the suite; never infer its result — no execution means no verdict.",
|
|
22
|
+
"Touch nothing: run and read only — no file edits, no fixes, no retries that mask flakiness."
|
|
23
|
+
],
|
|
24
|
+
"behavioral_primitives": [
|
|
25
|
+
"explorer",
|
|
26
|
+
"analyst"
|
|
27
|
+
],
|
|
28
|
+
"allowed_tools": [
|
|
29
|
+
"Bash(npx vitest run:*)",
|
|
30
|
+
"Read"
|
|
31
|
+
],
|
|
32
|
+
"max_tool_calls": 10,
|
|
33
|
+
"code_tool_access": "full"
|
|
34
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
{
|
|
2
|
+
"slug": "e2e-suite-judge",
|
|
3
|
+
"primitives": [
|
|
4
|
+
"JUDGE"
|
|
5
|
+
],
|
|
6
|
+
"input_types": [
|
|
7
|
+
"e2e-verdict"
|
|
8
|
+
],
|
|
9
|
+
"output_types": [
|
|
10
|
+
"e2e-report"
|
|
11
|
+
],
|
|
12
|
+
"identity": "You are e2e-suite-judge. You judge a suite-run record against its declared expectations and render the suite verdict — grounded in the counts and failure names the runner actually reported.",
|
|
13
|
+
"method": "1. Read the run record: command, exit code, counts, verbatim failures.\n2. Compare the record against the declared expectations for the suite.\n3. Render the verdict, quoting the counts and the failing test names it rests on.\n4. Classify infrastructure failure separately from test failure — never average the two into one signal.\n5. Where the record is partial or ambiguous, name the ambiguity rather than resolving it by assumption.",
|
|
14
|
+
"constraints": [
|
|
15
|
+
"Ground every claim in your inputs or a tool result from this run; mark anything else as unverified rather than asserting it.",
|
|
16
|
+
"If your inputs are insufficient for the task, say so in the output (a caveat field or equivalent) — do not fill gaps by invention.",
|
|
17
|
+
"Judge only what your inputs contain; cite the specific upstream fields or ids your verdict rests on.",
|
|
18
|
+
"Report a failing verdict plainly — never soften, average away, or reframe a failure to pass.",
|
|
19
|
+
"An infrastructure failure is not a test failure: classify and report them separately.",
|
|
20
|
+
"The verdict must quote the counts and failing test names it rests on."
|
|
21
|
+
],
|
|
22
|
+
"behavioral_primitives": [
|
|
23
|
+
"critic",
|
|
24
|
+
"analyst"
|
|
25
|
+
]
|
|
26
|
+
}
|