mindforge-cc 11.7.1 → 11.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/.agent/mindforge/wf-accessibility-audit.md +31 -0
  2. package/.agent/mindforge/wf-ai-model-eval.md +31 -0
  3. package/.agent/mindforge/wf-api-contract-test.md +31 -0
  4. package/.agent/mindforge/wf-api-migration.md +31 -0
  5. package/.agent/mindforge/wf-architecture-modernization.md +32 -0
  6. package/.agent/mindforge/wf-catalog.md +25 -3
  7. package/.agent/mindforge/wf-code-explainer.md +31 -0
  8. package/.agent/mindforge/wf-competitive-teardown.md +31 -0
  9. package/.agent/mindforge/wf-cost-analysis.md +31 -0
  10. package/.agent/mindforge/wf-data-pipeline-validate.md +31 -0
  11. package/.agent/mindforge/wf-database-migration.md +31 -0
  12. package/.agent/mindforge/wf-debug-detective.md +32 -0
  13. package/.agent/mindforge/wf-dependency-health.md +31 -0
  14. package/.agent/mindforge/wf-design-system-audit.md +31 -0
  15. package/.agent/mindforge/wf-documentation-gen.md +31 -0
  16. package/.agent/mindforge/wf-multi-repo-sync.md +31 -0
  17. package/.agent/mindforge/wf-mutation-testing.md +31 -0
  18. package/.agent/mindforge/wf-security-hardening.md +32 -0
  19. package/.agent/mindforge/wf-security-threat-model.md +31 -0
  20. package/.agent/mindforge/wf-test-coverage-gap.md +31 -0
  21. package/.agent/mindforge/wf-ux-heuristic-audit.md +31 -0
  22. package/.agent/mindforge/wf-writer-reviewer.md +30 -0
  23. package/.claude/commands/mindforge/wf-accessibility-audit.md +31 -0
  24. package/.claude/commands/mindforge/wf-ai-model-eval.md +31 -0
  25. package/.claude/commands/mindforge/wf-api-contract-test.md +31 -0
  26. package/.claude/commands/mindforge/wf-api-migration.md +31 -0
  27. package/.claude/commands/mindforge/wf-architecture-modernization.md +32 -0
  28. package/.claude/commands/mindforge/wf-catalog.md +25 -3
  29. package/.claude/commands/mindforge/wf-code-explainer.md +31 -0
  30. package/.claude/commands/mindforge/wf-competitive-teardown.md +31 -0
  31. package/.claude/commands/mindforge/wf-cost-analysis.md +31 -0
  32. package/.claude/commands/mindforge/wf-data-pipeline-validate.md +31 -0
  33. package/.claude/commands/mindforge/wf-database-migration.md +31 -0
  34. package/.claude/commands/mindforge/wf-debug-detective.md +32 -0
  35. package/.claude/commands/mindforge/wf-dependency-health.md +31 -0
  36. package/.claude/commands/mindforge/wf-design-system-audit.md +31 -0
  37. package/.claude/commands/mindforge/wf-documentation-gen.md +31 -0
  38. package/.claude/commands/mindforge/wf-multi-repo-sync.md +31 -0
  39. package/.claude/commands/mindforge/wf-mutation-testing.md +31 -0
  40. package/.claude/commands/mindforge/wf-security-hardening.md +32 -0
  41. package/.claude/commands/mindforge/wf-security-threat-model.md +31 -0
  42. package/.claude/commands/mindforge/wf-test-coverage-gap.md +31 -0
  43. package/.claude/commands/mindforge/wf-ux-heuristic-audit.md +31 -0
  44. package/.claude/commands/mindforge/wf-writer-reviewer.md +30 -0
  45. package/.mindforge/config.json +2 -2
  46. package/.mindforge/dynamic-workflows/REGISTRY.md +57 -60
  47. package/.mindforge/dynamic-workflows/index.json +730 -59
  48. package/.mindforge/dynamic-workflows/scripts/accessibility-audit.js +119 -0
  49. package/.mindforge/dynamic-workflows/scripts/ai-model-eval.js +82 -0
  50. package/.mindforge/dynamic-workflows/scripts/api-contract-test.js +114 -0
  51. package/.mindforge/dynamic-workflows/scripts/api-migration.js +156 -0
  52. package/.mindforge/dynamic-workflows/scripts/architecture-modernization.js +111 -0
  53. package/.mindforge/dynamic-workflows/scripts/code-explainer.js +138 -0
  54. package/.mindforge/dynamic-workflows/scripts/competitive-teardown.js +142 -0
  55. package/.mindforge/dynamic-workflows/scripts/cost-analysis.js +107 -0
  56. package/.mindforge/dynamic-workflows/scripts/data-pipeline-validate.js +69 -0
  57. package/.mindforge/dynamic-workflows/scripts/database-migration.js +113 -0
  58. package/.mindforge/dynamic-workflows/scripts/debug-detective.js +124 -0
  59. package/.mindforge/dynamic-workflows/scripts/dependency-health.js +110 -0
  60. package/.mindforge/dynamic-workflows/scripts/design-system-audit.js +115 -0
  61. package/.mindforge/dynamic-workflows/scripts/documentation-gen.js +91 -0
  62. package/.mindforge/dynamic-workflows/scripts/multi-repo-sync.js +63 -0
  63. package/.mindforge/dynamic-workflows/scripts/mutation-testing.js +148 -0
  64. package/.mindforge/dynamic-workflows/scripts/security-hardening.js +154 -0
  65. package/.mindforge/dynamic-workflows/scripts/security-threat-model.js +159 -0
  66. package/.mindforge/dynamic-workflows/scripts/test-coverage-gap.js +95 -0
  67. package/.mindforge/dynamic-workflows/scripts/ux-heuristic-audit.js +122 -0
  68. package/.mindforge/dynamic-workflows/scripts/writer-reviewer.js +85 -0
  69. package/.mindforge/memory/sync-manifest.json +1 -1
  70. package/CHANGELOG.md +43 -0
  71. package/MINDFORGE.md +2 -2
  72. package/README.md +42 -5
  73. package/RELEASENOTES.md +36 -0
  74. package/SECURITY.md +9 -0
  75. package/bin/autonomous/auto-runner.js +8 -2
  76. package/bin/autonomous/dependency-dag.js +1 -1
  77. package/bin/browser/session-manager.js +3 -1
  78. package/bin/governance/ztai-manager.js +6 -0
  79. package/bin/memory/eis-client.js +6 -2
  80. package/bin/spawn-agent.js +10 -7
  81. package/bin/sre/sli-verifier.js +9 -1
  82. package/bin/workflows/workflow-runner.js +18 -2
  83. package/docs/commands-reference.md +40 -14
  84. package/docs/getting-started.md +13 -1
  85. package/docs/sdk-reference.md +13 -1
  86. package/docs/troubleshooting.md +9 -0
  87. package/docs/user-guide.md +20 -1
  88. package/package.json +1 -1
  89. package/.agent/mindforge/wf-deep-research.md +0 -32
  90. package/.claude/commands/mindforge/wf-deep-research.md +0 -32
  91. package/.mindforge/dynamic-workflows/scripts/deep-research.js +0 -151
@@ -1,151 +0,0 @@
1
- export const meta = {
2
- name: 'deep-research',
3
- description: 'Fan-out web research with adversarial claim verification and cited synthesis',
4
- whenToUse: 'When you need a deep, multi-source, fact-checked research report on any topic',
5
- phases: [
6
- { title: 'Scope', detail: 'Decompose question into 5 search angles' },
7
- { title: 'Search', detail: '5 parallel web search agents, one per angle' },
8
- { title: 'Fetch', detail: 'Dedup URLs, fetch top 15 sources, extract falsifiable claims' },
9
- { title: 'Verify', detail: '3-vote adversarial verification per claim (need 2/3 to kill)' },
10
- { title: 'Synthesize', detail: 'Merge semantic dupes, rank by confidence, cite sources' },
11
- ],
12
- };
13
-
14
- export default async function run({ agent, parallel, pipeline, phase, log, args, budget }) {
15
- const ANGLES_SCHEMA = {
16
- type: 'object',
17
- properties: {
18
- angles: {
19
- type: 'array',
20
- items: { type: 'object', properties: { label: { type: 'string' }, query: { type: 'string' } }, required: ['label', 'query'] },
21
- minItems: 5, maxItems: 5,
22
- },
23
- },
24
- required: ['angles'],
25
- };
26
-
27
- const SEARCH_SCHEMA = {
28
- type: 'object',
29
- properties: {
30
- results: {
31
- type: 'array',
32
- items: { type: 'object', properties: { title: { type: 'string' }, url: { type: 'string' }, snippet: { type: 'string' } }, required: ['title', 'url', 'snippet'] },
33
- },
34
- },
35
- required: ['results'],
36
- };
37
-
38
- const CLAIMS_SCHEMA = {
39
- type: 'object',
40
- properties: {
41
- claims: {
42
- type: 'array',
43
- items: { type: 'object', properties: { claim: { type: 'string' }, source: { type: 'string' }, evidence: { type: 'string' } }, required: ['claim', 'source', 'evidence'] },
44
- },
45
- },
46
- required: ['claims'],
47
- };
48
-
49
- const VERDICT_SCHEMA = {
50
- type: 'object',
51
- properties: { refuted: { type: 'boolean' }, reason: { type: 'string' } },
52
- required: ['refuted', 'reason'],
53
- };
54
-
55
- const SYNTH_SCHEMA = {
56
- type: 'object',
57
- properties: {
58
- summary: { type: 'string' },
59
- findings: {
60
- type: 'array',
61
- items: { type: 'object', properties: { claim: { type: 'string' }, confidence: { type: 'string' }, sources: { type: 'array', items: { type: 'string' } }, evidence: { type: 'string' } }, required: ['claim', 'confidence', 'sources', 'evidence'] },
62
- },
63
- },
64
- required: ['summary', 'findings'],
65
- };
66
-
67
- const question = args || 'No question provided — please pass your research question as args.';
68
-
69
- phase('Scope');
70
- log(`Q: ${question.slice(0, 60)}…`);
71
- const scoped = await agent(
72
- `Decompose this research question into exactly 5 independent search angles. Each angle should approach the topic from a different perspective (e.g., implementation, theory, examples, trade-offs, contrarian view). Question: "${question}"`,
73
- { schema: ANGLES_SCHEMA, label: 'decompose' }
74
- );
75
- const angles = scoped.angles;
76
- log(`Decomposed into ${angles.length} angles: ${angles.map(a => a.label).join(', ')}`);
77
-
78
- phase('Search');
79
- const searchResults = await parallel(
80
- angles.map(angle => () => agent(
81
- `Web search for: "${angle.query}". Return the top 6 most relevant results with title, URL, and a brief snippet explaining why each is relevant to: "${angle.query}"`,
82
- { schema: SEARCH_SCHEMA, label: angle.label }
83
- ))
84
- );
85
-
86
- phase('Fetch');
87
- const allUrls = new Map();
88
- for (const res of searchResults.filter(Boolean)) {
89
- for (const r of res.results) {
90
- if (!allUrls.has(r.url)) allUrls.set(r.url, r);
91
- }
92
- }
93
- const uniqueUrls = [...allUrls.values()].slice(0, 15);
94
- log(`Fetched ${searchResults.filter(Boolean).length * 6} results → ${uniqueUrls.length} unique sources → extracting claims`);
95
-
96
- const claimBatches = await parallel(
97
- uniqueUrls.map(src => () => agent(
98
- `Read this source and extract up to 5 specific, falsifiable factual claims from it. Only extract claims that are directly relevant to: "${question}". Source URL: ${src.url}\nSnippet: ${src.snippet}`,
99
- { schema: CLAIMS_SCHEMA, label: `claims:${src.url.slice(8, 40)}` }
100
- ))
101
- );
102
- const allClaims = claimBatches.filter(Boolean).flatMap(b => b.claims).slice(0, 25);
103
- log(`Extracted ${allClaims.length} claims → verifying top 25`);
104
-
105
- phase('Verify');
106
- const verified = await parallel(
107
- allClaims.map(c => () =>
108
- parallel([
109
- () => agent(`Try to REFUTE this claim. Default to refuted=true if uncertain or unverifiable. Claim: "${c.claim}"`, { schema: VERDICT_SCHEMA, label: `verify-1:${c.claim.slice(0, 30)}` }),
110
- () => agent(`Adversarially challenge this claim from a different angle. Default to refuted=true if you cannot confirm it. Claim: "${c.claim}"`, { schema: VERDICT_SCHEMA, label: `verify-2:${c.claim.slice(0, 30)}` }),
111
- () => agent(`As a skeptical fact-checker, evaluate this claim. Default to refuted=true if evidence is weak. Claim: "${c.claim}"`, { schema: VERDICT_SCHEMA, label: `verify-3:${c.claim.slice(0, 30)}` }),
112
- ]).then(votes => {
113
- const refutes = votes.filter(Boolean).filter(v => v.refuted).length;
114
- return { ...c, survives: refutes <= 1, votes: `${3 - refutes}-${refutes}` };
115
- })
116
- )
117
- );
118
- const confirmed = verified.filter(Boolean).filter(c => c.survives);
119
- const killed = verified.filter(Boolean).filter(c => !c.survives);
120
- log(`Verify done: ${allClaims.length} claims → ${confirmed.length} confirmed, ${killed.length} killed`);
121
-
122
- phase('Synthesize');
123
- const synthesis = await agent(
124
- `Synthesize these verified research findings into a comprehensive report answering: "${question}"
125
-
126
- Confirmed findings (${confirmed.length}):
127
- ${confirmed.map((c, i) => `${i + 1}. [${c.votes}] ${c.claim} (source: ${c.source})`).join('\n')}
128
-
129
- Killed findings (${killed.length}):
130
- ${killed.map(c => `- [${c.votes}] ${c.claim}`).join('\n')}
131
-
132
- Produce a clear summary and a ranked findings list. For each finding, state the claim, confidence level (high/medium/low), sources, and evidence.`,
133
- { schema: SYNTH_SCHEMA, label: 'synthesize' }
134
- );
135
-
136
- return {
137
- question,
138
- summary: synthesis.summary,
139
- findings: synthesis.findings,
140
- refuted: killed.map(c => ({ claim: c.claim, vote: c.votes, source: c.source })),
141
- sources: uniqueUrls.map(u => u.url),
142
- stats: {
143
- angles: angles.length,
144
- sourcesFetched: uniqueUrls.length,
145
- claimsExtracted: allClaims.length,
146
- claimsVerified: allClaims.length,
147
- confirmed: confirmed.length,
148
- killed: killed.length,
149
- },
150
- };
151
- }