@soleri/forge 9.11.0 → 9.13.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/dist/compose-claude-md.js +30 -19
- package/dist/compose-claude-md.js.map +1 -1
- package/dist/scaffold-filetree.js +116 -49
- package/dist/scaffold-filetree.js.map +1 -1
- package/dist/skills/{agent-dev → soleri-agent-dev}/SKILL.md +4 -7
- package/dist/skills/{agent-guide → soleri-agent-guide}/SKILL.md +7 -6
- package/{src/skills/agent-issues → dist/skills/soleri-agent-issues}/SKILL.md +33 -6
- package/{src/skills/agent-persona → dist/skills/soleri-agent-persona}/SKILL.md +4 -5
- package/{src/skills/brain-debrief → dist/skills/soleri-brain-debrief}/SKILL.md +5 -5
- package/dist/skills/{brainstorming → soleri-brainstorming}/SKILL.md +4 -5
- package/dist/skills/soleri-build-skill/SKILL.md +210 -0
- package/dist/skills/{code-patrol → soleri-code-patrol}/SKILL.md +6 -2
- package/{src/skills/context-resume → dist/skills/soleri-context-resume}/SKILL.md +4 -4
- package/{src/skills/deep-review → dist/skills/soleri-deep-review}/SKILL.md +5 -5
- package/dist/skills/{deliver-and-ship → soleri-deliver-and-ship}/SKILL.md +5 -5
- package/{src/skills/discovery-phase → dist/skills/soleri-discovery-phase}/SKILL.md +18 -17
- package/dist/skills/soleri-dream/SKILL.md +104 -0
- package/dist/skills/{env-setup → soleri-env-setup}/SKILL.md +31 -7
- package/dist/skills/{executing-plans → soleri-executing-plans}/SKILL.md +4 -5
- package/{src/skills/finishing-a-development-branch → dist/skills/soleri-finishing-a-development-branch}/SKILL.md +35 -4
- package/dist/skills/{fix-and-learn → soleri-fix-and-learn}/SKILL.md +4 -5
- package/{src/skills/health-check → dist/skills/soleri-health-check}/SKILL.md +5 -5
- package/{src/skills/knowledge-harvest → dist/skills/soleri-knowledge-harvest}/SKILL.md +5 -5
- package/dist/skills/{mcp-doctor → soleri-mcp-doctor}/SKILL.md +4 -4
- package/{src/skills/onboard-me → dist/skills/soleri-onboard-me}/SKILL.md +14 -4
- package/{src/skills/parallel-execute → dist/skills/soleri-parallel-execute}/SKILL.md +12 -7
- package/dist/skills/soleri-research-scout/SKILL.md +225 -0
- package/dist/skills/{retrospective → soleri-retrospective}/SKILL.md +5 -4
- package/{src/skills/second-opinion → dist/skills/soleri-second-opinion}/SKILL.md +5 -2
- package/dist/skills/{subagent-driven-development → soleri-subagent-driven-development}/SKILL.md +36 -15
- package/{src/skills/systematic-debugging → dist/skills/soleri-systematic-debugging}/SKILL.md +5 -5
- package/{src/skills/test-driven-development → dist/skills/soleri-test-driven-development}/SKILL.md +12 -2
- package/dist/skills/{using-git-worktrees → soleri-using-git-worktrees}/SKILL.md +25 -4
- package/dist/skills/soleri-vault-capture/SKILL.md +205 -0
- package/{src/skills/vault-curate → dist/skills/soleri-vault-curate}/SKILL.md +13 -6
- package/{src/skills/vault-navigator → dist/skills/soleri-vault-navigator}/SKILL.md +14 -5
- package/dist/skills/{vault-smells → soleri-vault-smells}/SKILL.md +7 -8
- package/{src/skills/verification-before-completion → dist/skills/soleri-verification-before-completion}/SKILL.md +15 -4
- package/{src/skills/writing-plans → dist/skills/soleri-writing-plans}/SKILL.md +10 -4
- package/dist/skills/{yolo-mode → soleri-yolo-mode}/SKILL.md +4 -4
- package/dist/templates/clean-worktrees.js +20 -0
- package/dist/templates/clean-worktrees.js.map +1 -1
- package/dist/templates/package-json.js +1 -1
- package/dist/templates/readme.js +19 -19
- package/dist/templates/readme.js.map +1 -1
- package/dist/templates/setup-script.js +24 -4
- package/dist/templates/setup-script.js.map +1 -1
- package/dist/templates/shared-rules.js +53 -5
- package/dist/templates/shared-rules.js.map +1 -1
- package/dist/templates/skills.d.ts +15 -0
- package/dist/templates/skills.js +63 -0
- package/dist/templates/skills.js.map +1 -1
- package/package.json +2 -2
- package/src/__tests__/extensions-scaffold.test.ts +1 -1
- package/src/__tests__/scaffold-filetree.test.ts +24 -20
- package/src/__tests__/scaffolder.test.ts +6 -6
- package/src/compose-claude-md.ts +30 -19
- package/src/scaffold-filetree.ts +134 -49
- package/src/skills/{agent-dev → soleri-agent-dev}/SKILL.md +4 -7
- package/src/skills/{agent-guide → soleri-agent-guide}/SKILL.md +7 -6
- package/{dist/skills/agent-issues → src/skills/soleri-agent-issues}/SKILL.md +33 -6
- package/{dist/skills/agent-persona → src/skills/soleri-agent-persona}/SKILL.md +4 -5
- package/{dist/skills/brain-debrief → src/skills/soleri-brain-debrief}/SKILL.md +5 -5
- package/src/skills/{brainstorming → soleri-brainstorming}/SKILL.md +4 -5
- package/src/skills/soleri-build-skill/SKILL.md +210 -0
- package/src/skills/{code-patrol → soleri-code-patrol}/SKILL.md +6 -2
- package/{dist/skills/context-resume → src/skills/soleri-context-resume}/SKILL.md +4 -4
- package/{dist/skills/deep-review → src/skills/soleri-deep-review}/SKILL.md +5 -5
- package/src/skills/{deliver-and-ship → soleri-deliver-and-ship}/SKILL.md +5 -5
- package/{dist/skills/discovery-phase → src/skills/soleri-discovery-phase}/SKILL.md +18 -17
- package/src/skills/soleri-dream/SKILL.md +104 -0
- package/src/skills/{env-setup → soleri-env-setup}/SKILL.md +31 -7
- package/src/skills/{executing-plans → soleri-executing-plans}/SKILL.md +4 -5
- package/{dist/skills/finishing-a-development-branch → src/skills/soleri-finishing-a-development-branch}/SKILL.md +35 -4
- package/src/skills/{fix-and-learn → soleri-fix-and-learn}/SKILL.md +4 -5
- package/{dist/skills/health-check → src/skills/soleri-health-check}/SKILL.md +5 -5
- package/{dist/skills/knowledge-harvest → src/skills/soleri-knowledge-harvest}/SKILL.md +5 -5
- package/src/skills/{mcp-doctor → soleri-mcp-doctor}/SKILL.md +4 -4
- package/{dist/skills/onboard-me → src/skills/soleri-onboard-me}/SKILL.md +14 -4
- package/{dist/skills/parallel-execute → src/skills/soleri-parallel-execute}/SKILL.md +12 -7
- package/src/skills/soleri-research-scout/SKILL.md +225 -0
- package/src/skills/{retrospective → soleri-retrospective}/SKILL.md +5 -4
- package/{dist/skills/second-opinion → src/skills/soleri-second-opinion}/SKILL.md +5 -2
- package/src/skills/{subagent-driven-development → soleri-subagent-driven-development}/SKILL.md +36 -15
- package/{dist/skills/systematic-debugging → src/skills/soleri-systematic-debugging}/SKILL.md +5 -5
- package/{dist/skills/test-driven-development → src/skills/soleri-test-driven-development}/SKILL.md +12 -2
- package/src/skills/{using-git-worktrees → soleri-using-git-worktrees}/SKILL.md +25 -4
- package/src/skills/soleri-vault-capture/SKILL.md +205 -0
- package/{dist/skills/vault-curate → src/skills/soleri-vault-curate}/SKILL.md +13 -6
- package/{dist/skills/vault-navigator → src/skills/soleri-vault-navigator}/SKILL.md +14 -5
- package/src/skills/{vault-smells → soleri-vault-smells}/SKILL.md +7 -8
- package/{dist/skills/verification-before-completion → src/skills/soleri-verification-before-completion}/SKILL.md +15 -4
- package/{dist/skills/writing-plans → src/skills/soleri-writing-plans}/SKILL.md +10 -4
- package/src/skills/{yolo-mode → soleri-yolo-mode}/SKILL.md +4 -4
- package/src/templates/clean-worktrees.ts +20 -0
- package/src/templates/package-json.ts +1 -1
- package/src/templates/readme.ts +19 -19
- package/src/templates/setup-script.ts +24 -4
- package/src/templates/shared-rules.ts +54 -5
- package/src/templates/skills.ts +82 -0
- package/dist/skills/vault-capture/SKILL.md +0 -86
- package/src/skills/vault-capture/SKILL.md +0 -86
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: soleri-vault-capture
|
|
3
|
+
description: >
|
|
4
|
+
Use when the user says "save this", "capture this", "remember this pattern",
|
|
5
|
+
"add to vault", "vault capture", or when persisting learnings from a work
|
|
6
|
+
session. Validated capture with tier scoping, duplicate detection, and
|
|
7
|
+
abstraction review. For bulk extraction from documents, code, or PRs, use
|
|
8
|
+
knowledge-harvest instead.
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Vault Capture — Validated Knowledge Persistence
|
|
12
|
+
|
|
13
|
+
Capture knowledge to the vault with mandatory validation before persistence. Every item goes through tier classification, duplicate detection, and abstraction review. Nothing lands in the vault without conscious scoping.
|
|
14
|
+
|
|
15
|
+
## When to Use
|
|
16
|
+
|
|
17
|
+
- End of a work session — collecting learnings
|
|
18
|
+
- After a significant decision, pattern discovery, or anti-pattern identification
|
|
19
|
+
- When multiple items need capturing from a conversation
|
|
20
|
+
- User says "capture this", "save to vault", "remember this"
|
|
21
|
+
|
|
22
|
+
## Steps
|
|
23
|
+
|
|
24
|
+
### 1. Extract Candidate Items
|
|
25
|
+
|
|
26
|
+
Review the conversation or user request. For each piece of knowledge, extract:
|
|
27
|
+
|
|
28
|
+
- **Title** — clear, searchable name
|
|
29
|
+
- **Description** — what it is, when it applies, why it matters
|
|
30
|
+
- **Why** — reasoning behind the pattern (makes entries actionable)
|
|
31
|
+
- **Type** — pattern | anti-pattern | workflow | principle | decision | rule | reference
|
|
32
|
+
- **Domain** — architecture, design, components, process, testing, etc.
|
|
33
|
+
- **Tags** — 3-5 searchable keywords
|
|
34
|
+
|
|
35
|
+
### 2. Tier Classification (MANDATORY)
|
|
36
|
+
|
|
37
|
+
For EACH item, apply the three-question test:
|
|
38
|
+
|
|
39
|
+
| Question | If YES |
|
|
40
|
+
| -------------------------------------------------- | ---------------- |
|
|
41
|
+
| Would any developer on ANY project benefit? | **agent** tier |
|
|
42
|
+
| Would this apply to OTHER projects this team owns? | **team** tier |
|
|
43
|
+
| Is this specific to THIS codebase only? | **project** tier |
|
|
44
|
+
|
|
45
|
+
Decision tree:
|
|
46
|
+
|
|
47
|
+
```
|
|
48
|
+
Universal? (WCAG, UX laws, language patterns)
|
|
49
|
+
→ YES → agent
|
|
50
|
+
→ NO → Shared across team projects? (design system, workflow conventions)
|
|
51
|
+
→ YES → team
|
|
52
|
+
→ NO → project (component rules, token policies, architectural decisions)
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
**When in doubt: prefer project over agent.** Too specific is safer than too general.
|
|
56
|
+
|
|
57
|
+
### 3. Duplicate Detection
|
|
58
|
+
|
|
59
|
+
For each item, search the vault:
|
|
60
|
+
|
|
61
|
+
```
|
|
62
|
+
YOUR_AGENT_core op:search_intelligent
|
|
63
|
+
params: { query: "<item title and key terms>" }
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
Check results:
|
|
67
|
+
|
|
68
|
+
- **Score > 0.5** — likely duplicate. Update the existing entry instead of creating new.
|
|
69
|
+
- **Score 0.3-0.5** — possible overlap. Review existing entry: update or capture as new.
|
|
70
|
+
- **Score < 0.3** — no duplicate. Proceed with capture.
|
|
71
|
+
|
|
72
|
+
For batch scans: `YOUR_AGENT_core op:curator_detect_duplicates`
|
|
73
|
+
|
|
74
|
+
### 4. Abstraction Level Check
|
|
75
|
+
|
|
76
|
+
Validate each item is at the right level:
|
|
77
|
+
|
|
78
|
+
| Too Specific (skip) | Just Right (capture) | Too General (skip) |
|
|
79
|
+
| ------------------------------------------ | -------------------------------------------------------------- | ------------------------------ |
|
|
80
|
+
| "Line 42 of FileUpload.tsx needs a Button" | "Components must use Button atom for all interactive elements" | "Use design system components" |
|
|
81
|
+
| "Changed bg-red-500 to error token" | "No raw Tailwind colors — use semantic tokens" | "Use semantic colors" |
|
|
82
|
+
| "Fixed timeout in GuidedCodeBlock" | "setTimeout in useEffect must return clearTimeout cleanup" | "Clean up side effects" |
|
|
83
|
+
|
|
84
|
+
Ask: "Would this help someone who hasn't read today's conversation?" If NO — too specific, skip it.
|
|
85
|
+
|
|
86
|
+
### 5. Present Review Table
|
|
87
|
+
|
|
88
|
+
Before capturing, present ALL items to the user:
|
|
89
|
+
|
|
90
|
+
```
|
|
91
|
+
## Capture Review
|
|
92
|
+
|
|
93
|
+
| # | Title | Type | Tier | Duplicate? | Abstraction | Action |
|
|
94
|
+
|---|-------|------|------|------------|-------------|--------|
|
|
95
|
+
| 1 | [title] | pattern | project | No match | Good | Capture |
|
|
96
|
+
| 2 | [title] | anti-pattern | agent | Similar: [id] (0.45) | Good | Update existing |
|
|
97
|
+
| 3 | [title] | workflow | project | No match | Too specific | Skip |
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
**Wait for user approval.** Do NOT proceed without explicit confirmation.
|
|
101
|
+
|
|
102
|
+
### 6. Execute Approved Captures
|
|
103
|
+
|
|
104
|
+
For each approved item:
|
|
105
|
+
|
|
106
|
+
```
|
|
107
|
+
YOUR_AGENT_core op:capture_knowledge
|
|
108
|
+
params: {
|
|
109
|
+
entries: [{
|
|
110
|
+
title: "<title>",
|
|
111
|
+
description: "<description>",
|
|
112
|
+
type: "<type>",
|
|
113
|
+
domain: "<domain>",
|
|
114
|
+
severity: "<critical|warning|suggestion>",
|
|
115
|
+
tags: ["<tag1>", "<tag2>"],
|
|
116
|
+
why: "<reasoning>"
|
|
117
|
+
}]
|
|
118
|
+
}
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
For quick single captures: `YOUR_AGENT_core op:capture_quick params: { title: "<name>", description: "<details>" }`
|
|
122
|
+
|
|
123
|
+
### 7. Post-Capture Quality
|
|
124
|
+
|
|
125
|
+
For each captured entry:
|
|
126
|
+
|
|
127
|
+
- `YOUR_AGENT_core op:curator_groom params: { entryId: "<id>" }` — normalize tags
|
|
128
|
+
- `YOUR_AGENT_core op:curator_enrich params: { entryId: "<id>" }` — LLM enrichment
|
|
129
|
+
- `YOUR_AGENT_core op:curator_contradictions` — check for conflicts with existing entries
|
|
130
|
+
|
|
131
|
+
### 8. Verify and Fix Tiers (MANDATORY)
|
|
132
|
+
|
|
133
|
+
After capture, check EVERY response. Auto-detection frequently assigns "agent" tier with LOW confidence to project-specific knowledge.
|
|
134
|
+
|
|
135
|
+
```
|
|
136
|
+
YOUR_AGENT_core op:vault_set_scope
|
|
137
|
+
params: { id: "<entry-id>", tier: "<correct-tier>" }
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
### 9. Governance (if enabled)
|
|
141
|
+
|
|
142
|
+
If capture returns a `proposalId`, entry is queued for review:
|
|
143
|
+
|
|
144
|
+
```
|
|
145
|
+
YOUR_AGENT_core op:governance_proposals
|
|
146
|
+
params: { action: "list" }
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
### 10. Promote to Global (optional)
|
|
150
|
+
|
|
151
|
+
For cross-project knowledge worth sharing:
|
|
152
|
+
|
|
153
|
+
```
|
|
154
|
+
YOUR_AGENT_core op:memory_promote_to_global
|
|
155
|
+
params: { entryId: "<id>" }
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
### 11. Report
|
|
159
|
+
|
|
160
|
+
After all captures:
|
|
161
|
+
|
|
162
|
+
```
|
|
163
|
+
## Captured
|
|
164
|
+
|
|
165
|
+
| # | Title | ID | Tier | Type | Links |
|
|
166
|
+
|---|-------|----|------|------|-------|
|
|
167
|
+
| 1 | [title] | [id] | project | pattern | 3 auto-linked |
|
|
168
|
+
|
|
169
|
+
Skipped: [count] (too specific / duplicate)
|
|
170
|
+
Updated: [count] (merged into existing)
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
Verify with `YOUR_AGENT_core op:admin_health` and `YOUR_AGENT_core op:admin_vault_analytics`.
|
|
174
|
+
|
|
175
|
+
## Anti-patterns
|
|
176
|
+
|
|
177
|
+
- Capturing code fixes as knowledge (that's what git is for)
|
|
178
|
+
- Capturing temporary state (active plan, current task)
|
|
179
|
+
- Capturing things already in CLAUDE.md (duplication)
|
|
180
|
+
- Using "agent" tier for anything mentioning project-specific names
|
|
181
|
+
- Batch-capturing without showing the review table first
|
|
182
|
+
- Skipping tier verification after capture
|
|
183
|
+
|
|
184
|
+
## Common Mistakes
|
|
185
|
+
|
|
186
|
+
- Not checking for duplicates before capturing
|
|
187
|
+
- Missing the `why` field (makes entries not actionable)
|
|
188
|
+
- Skipping post-capture grooming (tags stay unnormalized)
|
|
189
|
+
- Letting auto-detection assign wrong tier without correction
|
|
190
|
+
- Capturing implementation details that belong in git, not vault
|
|
191
|
+
|
|
192
|
+
## Agent Tools Reference
|
|
193
|
+
|
|
194
|
+
| Op | When to Use |
|
|
195
|
+
| ---------------------------------------- | ------------------------------------ |
|
|
196
|
+
| `search_intelligent` | Duplicate detection before capture |
|
|
197
|
+
| `curator_detect_duplicates` | Batch duplicate scan |
|
|
198
|
+
| `capture_knowledge` | Persist after approval |
|
|
199
|
+
| `capture_quick` | Fast capture for simple items |
|
|
200
|
+
| `curator_groom` / `curator_enrich` | Post-capture quality |
|
|
201
|
+
| `curator_contradictions` | Find conflicts with existing entries |
|
|
202
|
+
| `vault_set_scope` | Fix tier after capture |
|
|
203
|
+
| `governance_proposals` | Check governance queue |
|
|
204
|
+
| `memory_promote_to_global` | Share cross-project |
|
|
205
|
+
| `admin_health` / `admin_vault_analytics` | Verify health after capture |
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: vault-curate
|
|
2
|
+
name: soleri-vault-curate
|
|
3
3
|
description: >
|
|
4
|
-
Use when the user says "clean vault", "deduplicate", "groom knowledge",
|
|
5
|
-
"
|
|
6
|
-
|
|
7
|
-
or improve the quality of the agent's knowledge base.
|
|
4
|
+
Use when the user says "clean vault", "deduplicate vault", "groom knowledge",
|
|
5
|
+
"merge patterns", or "vault maintenance". Maintains vault quality through
|
|
6
|
+
deduplication, grooming, and contradiction detection.
|
|
8
7
|
---
|
|
9
8
|
|
|
10
9
|
# Vault Curate — Knowledge Maintenance
|
|
@@ -86,7 +85,15 @@ YOUR_AGENT_core op:knowledge_reorganize
|
|
|
86
85
|
|
|
87
86
|
Preview first, then run again with `mode: "apply"` if the preview looks good.
|
|
88
87
|
|
|
89
|
-
### Step 7:
|
|
88
|
+
### Step 7: Rebuild Brain Intelligence
|
|
89
|
+
|
|
90
|
+
```
|
|
91
|
+
YOUR_AGENT_core op:brain_build_intelligence
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
Rebuild brain intelligence after vault has been cleaned/reorganized.
|
|
95
|
+
|
|
96
|
+
### Step 8: Verify Results
|
|
90
97
|
|
|
91
98
|
```
|
|
92
99
|
YOUR_AGENT_core op:knowledge_health
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: vault-navigator
|
|
2
|
+
name: soleri-vault-navigator
|
|
3
3
|
description: >
|
|
4
|
-
Use when the user
|
|
5
|
-
"
|
|
6
|
-
|
|
7
|
-
vault-capture instead.
|
|
4
|
+
Use when the user says "search the vault", "find patterns for",
|
|
5
|
+
"have we seen this before", "vault search", or "best practice for".
|
|
6
|
+
Queries the knowledge base for existing solutions and prior art.
|
|
8
7
|
---
|
|
9
8
|
|
|
10
9
|
# Vault Navigator — Knowledge Oracle
|
|
@@ -52,6 +51,15 @@ YOUR_AGENT_core op:brain_global_patterns
|
|
|
52
51
|
params: { domain: "<domain>" }
|
|
53
52
|
```
|
|
54
53
|
|
|
54
|
+
### Session Memory Search
|
|
55
|
+
|
|
56
|
+
For queries about recent work or session-specific knowledge:
|
|
57
|
+
|
|
58
|
+
```
|
|
59
|
+
YOUR_AGENT_core op:memory_search
|
|
60
|
+
params: { query: "<session-specific query>" }
|
|
61
|
+
```
|
|
62
|
+
|
|
55
63
|
### Broad exploration ("What do I know about X?")
|
|
56
64
|
|
|
57
65
|
Chain: `search_intelligent` -> `vault_tags` / `vault_domains` -> `memory_cross_project_search` -> `brain_strengths`. Label each finding with its source.
|
|
@@ -80,5 +88,6 @@ If all vault strategies return nothing, search the web. If web finds something u
|
|
|
80
88
|
| `vault_recent` | Recently modified entries |
|
|
81
89
|
| `vault_age_report` | Stale entries |
|
|
82
90
|
| `memory_cross_project_search` | Cross-project search |
|
|
91
|
+
| `memory_search` | Session and recent work search |
|
|
83
92
|
| `brain_strengths` / `brain_global_patterns` | Proven patterns |
|
|
84
93
|
| `capture_quick` | Capture web findings |
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: vault-smells
|
|
2
|
+
name: soleri-vault-smells
|
|
3
3
|
description: >
|
|
4
|
-
Use
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
For code review, use deep-review instead.
|
|
4
|
+
Use when the user says "vault quality", "vault analysis", "knowledge quality",
|
|
5
|
+
"knowledge debt", "stale patterns", or "find contradictions". Deep knowledge
|
|
6
|
+
quality analysis beyond operational health checks. For basic operational
|
|
7
|
+
health scoring and diagnostics, use health-check instead.
|
|
9
8
|
---
|
|
10
9
|
|
|
11
10
|
# Vault Smells — Knowledge Quality Deep Analysis
|
|
@@ -116,7 +115,7 @@ YOUR_AGENT_core op:vault_tags
|
|
|
116
115
|
- Near-duplicate categories (e.g., "error-handling" and "errors" and "exception-handling")
|
|
117
116
|
- Categories with only 1-2 entries (too granular)
|
|
118
117
|
- Tags used inconsistently (same concept, different tag names)
|
|
119
|
-
- Entries
|
|
118
|
+
- Entries mis-categorized (architecture pattern filed under "testing")
|
|
120
119
|
|
|
121
120
|
**Action:** Normalize with `op:curator_groom_all`. Merge overlapping categories.
|
|
122
121
|
|
|
@@ -198,7 +197,7 @@ For each smell category, assess severity:
|
|
|
198
197
|
|----------|----------|-------|--------|
|
|
199
198
|
| Contradictions | 🔴/🟠/🟡/🟢 | X | Inconsistent decisions |
|
|
200
199
|
| Staleness | 🔴/🟠/🟡/🟢 | X | Outdated guidance |
|
|
201
|
-
| Orphans | 🔴/🟠/🟡/🟢 | X |
|
|
200
|
+
| Orphans | 🔴/🟠/🟡/🟢 | X | Un-findable knowledge |
|
|
202
201
|
| Duplicates | 🔴/🟠/🟡/🟢 | X | Noise, conflicting versions |
|
|
203
202
|
| Shallow entries | 🔴/🟠/🟡/🟢 | X | Low-value knowledge |
|
|
204
203
|
| Category drift | 🔴/🟠/🟡/🟢 | X | Poor discoverability |
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: verification-before-completion
|
|
2
|
+
name: soleri-verification-before-completion
|
|
3
3
|
description: >
|
|
4
|
-
Use
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
Use when the user says "verify this works", "check output", "quality gate",
|
|
5
|
+
or "run tests before done". Internal quality gate before claiming any task
|
|
6
|
+
is done. For shipping, use deliver-and-ship instead.
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
# Verification Before Completion
|
|
@@ -31,6 +31,16 @@ If you haven't run the verification command in this message, you cannot claim it
|
|
|
31
31
|
6. ONLY THEN: Make the claim
|
|
32
32
|
```
|
|
33
33
|
|
|
34
|
+
## Check Loop Status
|
|
35
|
+
|
|
36
|
+
If this task is part of a tracked loop:
|
|
37
|
+
|
|
38
|
+
```
|
|
39
|
+
YOUR_AGENT_core op:loop_status
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
Report loop iteration status before claiming completion.
|
|
43
|
+
|
|
34
44
|
## Agent System Checks
|
|
35
45
|
|
|
36
46
|
After passing verification commands:
|
|
@@ -91,6 +101,7 @@ Do NOT rationalize away failures. If a check fails, it fails. Period.
|
|
|
91
101
|
|
|
92
102
|
| Op | When to Use |
|
|
93
103
|
| ----------------------- | ----------------------------------- |
|
|
104
|
+
| `loop_status` | Check loop iteration status |
|
|
94
105
|
| `admin_health` | Quick system health check |
|
|
95
106
|
| `admin_diagnostic` | Comprehensive diagnostic |
|
|
96
107
|
| `admin_vault_analytics` | Knowledge quality metrics |
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: writing-plans
|
|
2
|
+
name: soleri-writing-plans
|
|
3
3
|
description: >
|
|
4
|
-
Use when the user
|
|
5
|
-
"
|
|
6
|
-
|
|
4
|
+
Use when the user says "create a plan", "break this down", or
|
|
5
|
+
"plan the implementation". Creates structured implementation plans when
|
|
6
|
+
requirements are already known. For exploration, use brainstorming.
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
# Writing Plans
|
|
@@ -18,6 +18,11 @@ Write implementation plans assuming the engineer has zero codebase context. Docu
|
|
|
18
18
|
|
|
19
19
|
### 1. Vault First
|
|
20
20
|
|
|
21
|
+
```
|
|
22
|
+
YOUR_AGENT_core op:memory_search
|
|
23
|
+
params: { query: "<plan topic>", crossProject: true }
|
|
24
|
+
```
|
|
25
|
+
|
|
21
26
|
```
|
|
22
27
|
YOUR_AGENT_core op:search_intelligent
|
|
23
28
|
params: { query: "<feature being planned>" }
|
|
@@ -99,6 +104,7 @@ Offer execution choice: subagent-driven (this session) or parallel session with
|
|
|
99
104
|
|
|
100
105
|
| Op | When to Use |
|
|
101
106
|
| ---------------------------------- | ----------------------------- |
|
|
107
|
+
| `memory_search` | Cross-project plan precedents |
|
|
102
108
|
| `search_intelligent` | Find patterns before planning |
|
|
103
109
|
| `brain_strengths` | Proven approaches |
|
|
104
110
|
| `create_plan` | Create tracked plan |
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: yolo-mode
|
|
2
|
+
name: soleri-yolo-mode
|
|
3
3
|
description: >
|
|
4
|
-
Use when the user says "yolo", "autonomous", "skip approvals",
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
Use when the user says "yolo", "autonomous", "skip approvals",
|
|
5
|
+
"full auto", or "hands off". Activates autonomous execution mode
|
|
6
|
+
that skips approval gates but preserves safety invariants.
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
# YOLO Mode
|
|
@@ -47,13 +47,33 @@ for dir in "$WORKTREE_DIR"/*/; do
|
|
|
47
47
|
fi
|
|
48
48
|
fi
|
|
49
49
|
|
|
50
|
+
# Delete the local branch if it exists (worktree branches are local-only)
|
|
51
|
+
if [ -n "$branch" ] && [ "$branch" != "HEAD" ]; then
|
|
52
|
+
git branch -D "$branch" 2>/dev/null
|
|
53
|
+
fi
|
|
54
|
+
|
|
50
55
|
rm -rf "$dir" 2>/dev/null && cleaned=$((cleaned + 1))
|
|
51
56
|
done
|
|
52
57
|
|
|
58
|
+
# Detect default branch (main, master, etc.)
|
|
59
|
+
default_branch="$(git symbolic-ref refs/remotes/origin/HEAD 2>/dev/null | sed 's@^refs/remotes/origin/@@')"
|
|
60
|
+
[ -z "$default_branch" ] && default_branch="main"
|
|
61
|
+
|
|
62
|
+
# Also clean up orphaned subagent/* and worktree-agent-* local branches
|
|
63
|
+
# whose changes are already merged
|
|
64
|
+
for branch in $(git branch --format='%(refname:short)' 2>/dev/null | grep -E '^(subagent/|worktree-agent-)'); do
|
|
65
|
+
diff="$(git diff "$default_branch"..."$branch" --stat 2>/dev/null | tail -1)"
|
|
66
|
+
if [ -z "$diff" ]; then
|
|
67
|
+
git branch -D "$branch" 2>/dev/null
|
|
68
|
+
cleaned=$((cleaned + 1))
|
|
69
|
+
fi
|
|
70
|
+
done
|
|
71
|
+
|
|
53
72
|
# Silent unless something was cleaned
|
|
54
73
|
if [ "$cleaned" -gt 0 ]; then
|
|
55
74
|
echo "Cleaned $cleaned stale worktree(s), $skipped active/protected"
|
|
56
75
|
fi
|
|
76
|
+
exit 0
|
|
57
77
|
`;
|
|
58
78
|
}
|
|
59
79
|
//# sourceMappingURL=clean-worktrees.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clean-worktrees.js","sourceRoot":"","sources":["../../src/templates/clean-worktrees.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,UAAU,4BAA4B;IAC1C,OAAO
|
|
1
|
+
{"version":3,"file":"clean-worktrees.js","sourceRoot":"","sources":["../../src/templates/clean-worktrees.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,UAAU,4BAA4B;IAC1C,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuER,CAAC;AACF,CAAC"}
|
|
@@ -25,7 +25,7 @@ export function generatePackageJson(config) {
|
|
|
25
25
|
license: 'MIT',
|
|
26
26
|
engines: { node: '>=18.0.0' },
|
|
27
27
|
dependencies: {
|
|
28
|
-
'@modelcontextprotocol/sdk': '^1.
|
|
28
|
+
'@modelcontextprotocol/sdk': '^1.28.0',
|
|
29
29
|
'@soleri/core': '^2.0.0',
|
|
30
30
|
zod: '^3.24.2',
|
|
31
31
|
...(config.telegram ? { grammy: '^1.35.0' } : {}),
|
package/dist/templates/readme.js
CHANGED
|
@@ -74,9 +74,9 @@ export function generateReadme(config) {
|
|
|
74
74
|
? `${config.name} ships with ${skillCount} structured workflow skills, invocable via \`/<skill-name>\` in Claude Code:`
|
|
75
75
|
: `${config.name} ships with ${skillCount} structured workflow skills, available via generated AGENTS.md + local skill files in Codex:`;
|
|
76
76
|
const skillsInstallNote = claudeSetup && codexSetup
|
|
77
|
-
? 'Skills are installed to `~/.claude/
|
|
77
|
+
? 'Skills are installed to `~/.claude/skills/` and `~/.codex/skills/` during setup. Run `./scripts/setup.sh` to install or reinstall.'
|
|
78
78
|
: claudeSetup
|
|
79
|
-
? 'Skills are installed to `~/.claude/
|
|
79
|
+
? 'Skills are installed to `~/.claude/skills/` during setup. Run `./scripts/setup.sh` to install or reinstall.'
|
|
80
80
|
: 'Skills are installed to `~/.codex/skills/` during setup. Run `./scripts/setup.sh` to install or reinstall.';
|
|
81
81
|
return `# ${config.name} — ${config.role}
|
|
82
82
|
|
|
@@ -142,33 +142,33 @@ ${skillsLead}
|
|
|
142
142
|
|
|
143
143
|
| Skill | Description |
|
|
144
144
|
|-------|-------------|
|
|
145
|
-
| \`/test-driven-development\` | Red-green-refactor TDD workflow with vault-informed test patterns |
|
|
146
|
-
| \`/systematic-debugging\` | Root cause investigation — vault search, web search, then diagnose |
|
|
147
|
-
| \`/verification-before-completion\` | Evidence-based completion claims with system diagnostics |
|
|
148
|
-
| \`/brainstorming\` | Collaborative design exploration with vault + web research first |
|
|
149
|
-
| \`/writing-plans\` | Implementation plans with quality grading and auto-improvement |
|
|
150
|
-
| \`/executing-plans\` | Batch execution with loop tracking and plan reconciliation |
|
|
151
|
-
| \`/fix-and-learn\` | Fix bugs and capture root cause — vault search before any fix |
|
|
152
|
-
| \`/code-patrol\` | Review code against YOUR vault patterns, not generic lint rules |
|
|
145
|
+
| \`/soleri-test-driven-development\` | Red-green-refactor TDD workflow with vault-informed test patterns |
|
|
146
|
+
| \`/soleri-systematic-debugging\` | Root cause investigation — vault search, web search, then diagnose |
|
|
147
|
+
| \`/soleri-verification-before-completion\` | Evidence-based completion claims with system diagnostics |
|
|
148
|
+
| \`/soleri-brainstorming\` | Collaborative design exploration with vault + web research first |
|
|
149
|
+
| \`/soleri-writing-plans\` | Implementation plans with quality grading and auto-improvement |
|
|
150
|
+
| \`/soleri-executing-plans\` | Batch execution with loop tracking and plan reconciliation |
|
|
151
|
+
| \`/soleri-fix-and-learn\` | Fix bugs and capture root cause — vault search before any fix |
|
|
152
|
+
| \`/soleri-code-patrol\` | Review code against YOUR vault patterns, not generic lint rules |
|
|
153
153
|
|
|
154
154
|
**Knowledge Management:**
|
|
155
155
|
|
|
156
156
|
| Skill | Description |
|
|
157
157
|
|-------|-------------|
|
|
158
|
-
| \`/vault-navigator\` | Intelligent vault search — tags, domains, age reports, cross-project |
|
|
159
|
-
| \`/vault-capture\` | Persist knowledge with curator grooming and governance |
|
|
160
|
-
| \`/knowledge-harvest\` | Point at any doc/code — auto-extract patterns into vault |
|
|
161
|
-
| \`/brain-debrief\` | Intelligence report — strengths, gaps, cross-project insights |
|
|
158
|
+
| \`/soleri-vault-navigator\` | Intelligent vault search — tags, domains, age reports, cross-project |
|
|
159
|
+
| \`/soleri-vault-capture\` | Persist knowledge with curator grooming and governance |
|
|
160
|
+
| \`/soleri-knowledge-harvest\` | Point at any doc/code — auto-extract patterns into vault |
|
|
161
|
+
| \`/soleri-brain-debrief\` | Intelligence report — strengths, gaps, cross-project insights |
|
|
162
162
|
|
|
163
163
|
**Magic UX:**
|
|
164
164
|
|
|
165
165
|
| Skill | Description |
|
|
166
166
|
|-------|-------------|
|
|
167
|
-
| \`/context-resume\` | "What was I working on?" — full context reconstruction |
|
|
168
|
-
| \`/second-opinion\` | Decision support from vault + brain + web combined |
|
|
169
|
-
| \`/retrospective\` | Data-driven sprint/week retro from actual metrics |
|
|
170
|
-
| \`/onboard-me\` | Instant project knowledge tour for newcomers |
|
|
171
|
-
| \`/health-check\` | Vault maintenance — duplicates, contradictions, stale entries |
|
|
167
|
+
| \`/soleri-context-resume\` | "What was I working on?" — full context reconstruction |
|
|
168
|
+
| \`/soleri-second-opinion\` | Decision support from vault + brain + web combined |
|
|
169
|
+
| \`/soleri-retrospective\` | Data-driven sprint/week retro from actual metrics |
|
|
170
|
+
| \`/soleri-onboard-me\` | Instant project knowledge tour for newcomers |
|
|
171
|
+
| \`/soleri-health-check\` | Vault maintenance — duplicates, contradictions, stale entries |
|
|
172
172
|
|
|
173
173
|
${skillsInstallNote}
|
|
174
174
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"readme.js","sourceRoot":"","sources":["../../src/templates/readme.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"readme.js","sourceRoot":"","sources":["../../src/templates/readme.ts"],"names":[],"mappings":"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"}
|
|
@@ -99,14 +99,13 @@ else
|
|
|
99
99
|
fi
|
|
100
100
|
fi
|
|
101
101
|
|
|
102
|
-
# Install skills to ~/.claude/
|
|
102
|
+
# Install skills to ~/.claude/skills/
|
|
103
103
|
SKILLS_DIR="$AGENT_DIR/skills"
|
|
104
|
-
|
|
104
|
+
CLAUDE_SKILLS_DIR="$HOME/.claude/skills"
|
|
105
105
|
|
|
106
106
|
if [ -d "$SKILLS_DIR" ]; then
|
|
107
107
|
echo ""
|
|
108
108
|
echo "Installing skills for Claude Code..."
|
|
109
|
-
mkdir -p "$COMMANDS_DIR"
|
|
110
109
|
skill_installed=0
|
|
111
110
|
skill_skipped=0
|
|
112
111
|
for skill_dir in "$SKILLS_DIR"/*/; do
|
|
@@ -114,15 +113,36 @@ if [ -d "$SKILLS_DIR" ]; then
|
|
|
114
113
|
skill_file="$skill_dir/SKILL.md"
|
|
115
114
|
[ -f "$skill_file" ] || continue
|
|
116
115
|
skill_name="$(basename "$skill_dir")"
|
|
117
|
-
|
|
116
|
+
dest_dir="$CLAUDE_SKILLS_DIR/$skill_name"
|
|
117
|
+
dest="$dest_dir/SKILL.md"
|
|
118
118
|
if [ -f "$dest" ]; then
|
|
119
119
|
skill_skipped=$((skill_skipped + 1))
|
|
120
120
|
else
|
|
121
|
+
mkdir -p "$dest_dir"
|
|
121
122
|
cp "$skill_file" "$dest"
|
|
122
123
|
skill_installed=$((skill_installed + 1))
|
|
123
124
|
fi
|
|
124
125
|
done
|
|
125
126
|
echo "[ok] Claude skills: $skill_installed installed, $skill_skipped already present"
|
|
127
|
+
|
|
128
|
+
# Migrate legacy commands to skills (one-time cleanup)
|
|
129
|
+
LEGACY_DIR="$HOME/.claude/commands"
|
|
130
|
+
if [ -d "$LEGACY_DIR" ]; then
|
|
131
|
+
legacy_migrated=0
|
|
132
|
+
for legacy_file in "$LEGACY_DIR"/*.md; do
|
|
133
|
+
[ -f "$legacy_file" ] || continue
|
|
134
|
+
legacy_name="$(basename "$legacy_file" .md)"
|
|
135
|
+
dest_dir="$CLAUDE_SKILLS_DIR/$legacy_name"
|
|
136
|
+
if [ ! -d "$dest_dir" ]; then
|
|
137
|
+
mkdir -p "$dest_dir"
|
|
138
|
+
mv "$legacy_file" "$dest_dir/SKILL.md"
|
|
139
|
+
legacy_migrated=$((legacy_migrated + 1))
|
|
140
|
+
fi
|
|
141
|
+
done
|
|
142
|
+
if [ "$legacy_migrated" -gt 0 ]; then
|
|
143
|
+
echo "[ok] Migrated $legacy_migrated legacy commands from ~/.claude/commands/ to ~/.claude/skills/"
|
|
144
|
+
fi
|
|
145
|
+
fi
|
|
126
146
|
fi
|
|
127
147
|
`
|
|
128
148
|
: '';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup-script.js","sourceRoot":"","sources":["../../src/templates/setup-script.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAmB;IACrD,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,QAAQ,CAAC;IACnD,MAAM,WAAW,GAAG,WAAW,KAAK,QAAQ,IAAI,WAAW,KAAK,MAAM,IAAI,WAAW,KAAK,KAAK,CAAC;IAChG,MAAM,UAAU,GAAG,WAAW,KAAK,OAAO,IAAI,WAAW,KAAK,MAAM,IAAI,WAAW,KAAK,KAAK,CAAC;IAC9F,MAAM,aAAa,GAAG,WAAW,KAAK,UAAU,IAAI,WAAW,KAAK,KAAK,CAAC;IAC1E,MAAM,SAAS,GAAG;QAChB,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACvC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAChC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KACvC,CAAC;IACF,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAExC,MAAM,aAAa,GAAG,WAAW;QAC/B,CAAC,CAAC;;;;;;;;;;;;;;oBAcc,MAAM,CAAC,IAAI;;wBAEP,MAAM,CAAC,IAAI;;;;;;;;;;;;;;;;;;uFAkBoD,MAAM,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;qFAyBX,MAAM,CAAC,EAAE
|
|
1
|
+
{"version":3,"file":"setup-script.js","sourceRoot":"","sources":["../../src/templates/setup-script.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAmB;IACrD,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,QAAQ,CAAC;IACnD,MAAM,WAAW,GAAG,WAAW,KAAK,QAAQ,IAAI,WAAW,KAAK,MAAM,IAAI,WAAW,KAAK,KAAK,CAAC;IAChG,MAAM,UAAU,GAAG,WAAW,KAAK,OAAO,IAAI,WAAW,KAAK,MAAM,IAAI,WAAW,KAAK,KAAK,CAAC;IAC9F,MAAM,aAAa,GAAG,WAAW,KAAK,UAAU,IAAI,WAAW,KAAK,KAAK,CAAC;IAC1E,MAAM,SAAS,GAAG;QAChB,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACvC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAChC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KACvC,CAAC;IACF,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAExC,MAAM,aAAa,GAAG,WAAW;QAC/B,CAAC,CAAC;;;;;;;;;;;;;;oBAcc,MAAM,CAAC,IAAI;;wBAEP,MAAM,CAAC,IAAI;;;;;;;;;;;;;;;;;;uFAkBoD,MAAM,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;qFAyBX,MAAM,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuE7F;QACG,CAAC,CAAC,EAAE,CAAC;IAEP,MAAM,eAAe,GACnB,WAAW,IAAI,MAAM,CAAC,SAAS,EAAE,MAAM;QACrC,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;CAuBP;QACK,CAAC,CAAC,EAAE,CAAC;IAET,MAAM,YAAY,GAAG,UAAU;QAC7B,CAAC,CAAC;;;oBAGc,MAAM,CAAC,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBAkCP,MAAM,CAAC,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6BlC;QACG,CAAC,CAAC,EAAE,CAAC;IAEP,MAAM,eAAe,GAAG,aAAa;QACnC,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAoCc,MAAM,CAAC,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBAiCP,MAAM,CAAC,IAAI;;mCAEA,MAAM,CAAC,EAAE;;;;;;;;;;yCAUH,MAAM,CAAC,EAAE;;;;;;6CAML,MAAM,CAAC,EAAE;iGAC2C,MAAM,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAuDpF,MAAM,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;;CAqB9B;QACG,CAAC,CAAC,EAAE,CAAC;IAEP,MAAM,SAAS,GAAG;QAChB,SAAS;QACT,+BAA+B;QAC/B,SAAS;QACT,cAAc;QACd,GAAG,CAAC,WAAW;YACb,CAAC,CAAC,CAAC,wEAAwE,CAAC;YAC5E,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,kEAAkE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3F,GAAG,CAAC,aAAa;YACf,CAAC,CAAC,CAAC,qEAAqE,CAAC;YACzE,CAAC,CAAC,EAAE,CAAC;QACP,4BAA4B,MAAM,CAAC,IAAI,OAAO;QAC9C,SAAS;QACT,SAAS,MAAM,CAAC,IAAI,aAAa;KAClC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEb,OAAO;;;;cAIK,MAAM,CAAC,EAAE;;YAEX,MAAM,CAAC,IAAI,WAAW,SAAS;;;;;;;;;;;;;;;;;;;mBAmBxB,MAAM,CAAC,IAAI;;;;;;;;EAQ5B,aAAa;EACb,eAAe;EACf,YAAY;EACZ,eAAe;EACf,SAAS;CACV,CAAC;AACF,CAAC"}
|