@orderful/droid 0.26.0 → 0.27.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/.claude-plugin/marketplace.json +7 -7
- package/AGENTS.md +36 -32
- package/CHANGELOG.md +29 -0
- package/dist/bin/droid.js +102 -24
- package/dist/index.js +59 -25
- package/dist/lib/migrations.d.ts +8 -0
- package/dist/lib/migrations.d.ts.map +1 -1
- package/dist/lib/skills.d.ts.map +1 -1
- package/dist/lib/tools.d.ts.map +1 -1
- package/dist/lib/types.d.ts +10 -2
- package/dist/lib/types.d.ts.map +1 -1
- package/dist/tools/brain/.claude-plugin/plugin.json +1 -1
- package/dist/tools/brain/TOOL.yaml +7 -5
- package/dist/tools/brain/commands/brain.md +17 -49
- package/dist/tools/brain/commands/scratchpad.md +13 -50
- package/{src/tools/brain/skills/droid-brain → dist/tools/brain/skills/brain}/SKILL.md +5 -5
- package/dist/tools/brain/skills/{droid-brain-obsidian → brain-obsidian}/SKILL.md +8 -8
- package/dist/tools/coach/.claude-plugin/plugin.json +1 -1
- package/dist/tools/coach/TOOL.yaml +4 -3
- package/dist/tools/coach/commands/coach.md +14 -54
- package/{src/tools/coach/skills/droid-coach → dist/tools/coach/skills/coach}/SKILL.md +4 -3
- package/dist/tools/code-review/.claude-plugin/plugin.json +1 -1
- package/dist/tools/code-review/TOOL.yaml +4 -3
- package/dist/tools/code-review/commands/code-review.md +18 -102
- package/dist/tools/code-review/skills/code-review/SKILL.md +154 -0
- package/dist/tools/codex/.claude-plugin/plugin.json +1 -1
- package/dist/tools/codex/TOOL.yaml +4 -3
- package/dist/tools/codex/commands/codex.md +18 -65
- package/dist/tools/codex/skills/{droid-codex → codex}/SKILL.md +64 -45
- package/{src/tools/codex/skills/droid-codex → dist/tools/codex/skills/codex}/references/loading.md +94 -55
- package/dist/tools/codex/skills/codex/scripts/git-finish-write.d.ts.map +1 -0
- package/dist/tools/codex/skills/codex/scripts/git-preamble.d.ts.map +1 -0
- package/dist/tools/codex/skills/codex/scripts/git-start-write.d.ts.map +1 -0
- package/dist/tools/comments/.claude-plugin/plugin.json +1 -1
- package/dist/tools/comments/TOOL.yaml +4 -3
- package/dist/tools/comments/commands/comments.md +12 -14
- package/{src/tools/comments/skills/droid-comments → dist/tools/comments/skills/comments}/SKILL.md +3 -1
- package/dist/tools/project/.claude-plugin/plugin.json +1 -1
- package/dist/tools/project/TOOL.yaml +4 -3
- package/dist/tools/project/commands/project.md +12 -27
- package/dist/tools/project/skills/{droid-project → project}/SKILL.md +12 -11
- package/dist/tools/tech-design/.claude-plugin/plugin.json +1 -1
- package/dist/tools/tech-design/TOOL.yaml +4 -3
- package/dist/tools/tech-design/commands/tech-design.md +18 -80
- package/{src/tools/tech-design/skills/droid-tech-design → dist/tools/tech-design/skills/tech-design}/SKILL.md +1 -1
- package/package.json +1 -1
- package/src/commands/tui/components/Badge.test.tsx +10 -4
- package/src/commands/tui.tsx +4 -4
- package/src/lib/migrations.ts +95 -4
- package/src/lib/skills.test.ts +199 -74
- package/src/lib/skills.ts +55 -54
- package/src/lib/tools.ts +19 -12
- package/src/lib/types.ts +20 -5
- package/src/tools/brain/.claude-plugin/plugin.json +1 -1
- package/src/tools/brain/TOOL.yaml +7 -5
- package/src/tools/brain/commands/brain.md +17 -49
- package/src/tools/brain/commands/scratchpad.md +13 -50
- package/{dist/tools/brain/skills/droid-brain → src/tools/brain/skills/brain}/SKILL.md +5 -5
- package/src/tools/brain/skills/{droid-brain-obsidian → brain-obsidian}/SKILL.md +8 -8
- package/src/tools/coach/.claude-plugin/plugin.json +1 -1
- package/src/tools/coach/TOOL.yaml +4 -3
- package/src/tools/coach/commands/coach.md +14 -54
- package/{dist/tools/coach/skills/droid-coach → src/tools/coach/skills/coach}/SKILL.md +4 -3
- package/src/tools/code-review/.claude-plugin/plugin.json +1 -1
- package/src/tools/code-review/TOOL.yaml +4 -3
- package/src/tools/code-review/commands/code-review.md +18 -102
- package/src/tools/code-review/skills/code-review/SKILL.md +154 -0
- package/src/tools/codex/.claude-plugin/plugin.json +1 -1
- package/src/tools/codex/TOOL.yaml +4 -3
- package/src/tools/codex/commands/codex.md +18 -65
- package/src/tools/codex/skills/{droid-codex → codex}/SKILL.md +64 -45
- package/{dist/tools/codex/skills/droid-codex → src/tools/codex/skills/codex}/references/loading.md +94 -55
- package/src/tools/comments/.claude-plugin/plugin.json +1 -1
- package/src/tools/comments/TOOL.yaml +4 -3
- package/src/tools/comments/commands/comments.md +12 -14
- package/{dist/tools/comments/skills/droid-comments → src/tools/comments/skills/comments}/SKILL.md +3 -1
- package/src/tools/project/.claude-plugin/plugin.json +1 -1
- package/src/tools/project/TOOL.yaml +4 -3
- package/src/tools/project/commands/project.md +12 -27
- package/src/tools/project/skills/{droid-project → project}/SKILL.md +12 -11
- package/src/tools/tech-design/.claude-plugin/plugin.json +1 -1
- package/src/tools/tech-design/TOOL.yaml +4 -3
- package/src/tools/tech-design/commands/tech-design.md +18 -80
- package/{dist/tools/tech-design/skills/droid-tech-design → src/tools/tech-design/skills/tech-design}/SKILL.md +1 -1
- package/dist/tools/code-review/skills/droid-code-review/SKILL.md +0 -55
- package/dist/tools/codex/skills/droid-codex/scripts/git-finish-write.d.ts.map +0 -1
- package/dist/tools/codex/skills/droid-codex/scripts/git-preamble.d.ts.map +0 -1
- package/dist/tools/codex/skills/droid-codex/scripts/git-start-write.d.ts.map +0 -1
- package/src/tools/code-review/skills/droid-code-review/SKILL.md +0 -55
- /package/dist/tools/brain/skills/{droid-brain → brain}/references/metadata.md +0 -0
- /package/dist/tools/brain/skills/{droid-brain → brain}/references/naming.md +0 -0
- /package/dist/tools/brain/skills/{droid-brain → brain}/references/templates.md +0 -0
- /package/dist/tools/brain/skills/{droid-brain → brain}/references/workflows.md +0 -0
- /package/dist/tools/brain/skills/{droid-brain-obsidian → brain-obsidian}/references/templates.md +0 -0
- /package/dist/tools/brain/skills/{droid-brain-obsidian → brain-obsidian}/references/workflows.md +0 -0
- /package/dist/tools/codex/skills/{droid-codex → codex}/references/creating.md +0 -0
- /package/dist/tools/codex/skills/{droid-codex → codex}/references/decisions.md +0 -0
- /package/dist/tools/codex/skills/{droid-codex → codex}/references/topics.md +0 -0
- /package/dist/tools/codex/skills/{droid-codex → codex}/scripts/git-finish-write.d.ts +0 -0
- /package/dist/tools/codex/skills/{droid-codex → codex}/scripts/git-finish-write.ts +0 -0
- /package/dist/tools/codex/skills/{droid-codex → codex}/scripts/git-preamble.d.ts +0 -0
- /package/dist/tools/codex/skills/{droid-codex → codex}/scripts/git-preamble.ts +0 -0
- /package/dist/tools/codex/skills/{droid-codex → codex}/scripts/git-scripts.test.ts +0 -0
- /package/dist/tools/codex/skills/{droid-codex → codex}/scripts/git-start-write.d.ts +0 -0
- /package/dist/tools/codex/skills/{droid-codex → codex}/scripts/git-start-write.ts +0 -0
- /package/dist/tools/project/skills/{droid-project → project}/references/changelog.md +0 -0
- /package/dist/tools/project/skills/{droid-project → project}/references/creating.md +0 -0
- /package/dist/tools/project/skills/{droid-project → project}/references/loading.md +0 -0
- /package/dist/tools/project/skills/{droid-project → project}/references/templates.md +0 -0
- /package/dist/tools/project/skills/{droid-project → project}/references/updating.md +0 -0
- /package/dist/tools/project/skills/{droid-project → project}/references/versioning.md +0 -0
- /package/dist/tools/tech-design/skills/{droid-tech-design → tech-design}/references/draft.md +0 -0
- /package/dist/tools/tech-design/skills/{droid-tech-design → tech-design}/references/gaps.md +0 -0
- /package/dist/tools/tech-design/skills/{droid-tech-design → tech-design}/references/publish.md +0 -0
- /package/dist/tools/tech-design/skills/{droid-tech-design → tech-design}/references/research-doc-template.md +0 -0
- /package/dist/tools/tech-design/skills/{droid-tech-design → tech-design}/references/rollup-template.md +0 -0
- /package/dist/tools/tech-design/skills/{droid-tech-design → tech-design}/references/start.md +0 -0
- /package/dist/tools/tech-design/skills/{droid-tech-design → tech-design}/references/think.md +0 -0
- /package/dist/tools/tech-design/skills/{droid-tech-design → tech-design}/references/thought-doc-template.md +0 -0
- /package/src/tools/brain/skills/{droid-brain → brain}/references/metadata.md +0 -0
- /package/src/tools/brain/skills/{droid-brain → brain}/references/naming.md +0 -0
- /package/src/tools/brain/skills/{droid-brain → brain}/references/templates.md +0 -0
- /package/src/tools/brain/skills/{droid-brain → brain}/references/workflows.md +0 -0
- /package/src/tools/brain/skills/{droid-brain-obsidian → brain-obsidian}/references/templates.md +0 -0
- /package/src/tools/brain/skills/{droid-brain-obsidian → brain-obsidian}/references/workflows.md +0 -0
- /package/src/tools/codex/skills/{droid-codex → codex}/references/creating.md +0 -0
- /package/src/tools/codex/skills/{droid-codex → codex}/references/decisions.md +0 -0
- /package/src/tools/codex/skills/{droid-codex → codex}/references/topics.md +0 -0
- /package/src/tools/codex/skills/{droid-codex → codex}/scripts/git-finish-write.ts +0 -0
- /package/src/tools/codex/skills/{droid-codex → codex}/scripts/git-preamble.ts +0 -0
- /package/src/tools/codex/skills/{droid-codex → codex}/scripts/git-scripts.test.ts +0 -0
- /package/src/tools/codex/skills/{droid-codex → codex}/scripts/git-start-write.ts +0 -0
- /package/src/tools/project/skills/{droid-project → project}/references/changelog.md +0 -0
- /package/src/tools/project/skills/{droid-project → project}/references/creating.md +0 -0
- /package/src/tools/project/skills/{droid-project → project}/references/loading.md +0 -0
- /package/src/tools/project/skills/{droid-project → project}/references/templates.md +0 -0
- /package/src/tools/project/skills/{droid-project → project}/references/updating.md +0 -0
- /package/src/tools/project/skills/{droid-project → project}/references/versioning.md +0 -0
- /package/src/tools/tech-design/skills/{droid-tech-design → tech-design}/references/draft.md +0 -0
- /package/src/tools/tech-design/skills/{droid-tech-design → tech-design}/references/gaps.md +0 -0
- /package/src/tools/tech-design/skills/{droid-tech-design → tech-design}/references/publish.md +0 -0
- /package/src/tools/tech-design/skills/{droid-tech-design → tech-design}/references/research-doc-template.md +0 -0
- /package/src/tools/tech-design/skills/{droid-tech-design → tech-design}/references/rollup-template.md +0 -0
- /package/src/tools/tech-design/skills/{droid-tech-design → tech-design}/references/start.md +0 -0
- /package/src/tools/tech-design/skills/{droid-tech-design → tech-design}/references/think.md +0 -0
- /package/src/tools/tech-design/skills/{droid-tech-design → tech-design}/references/thought-doc-template.md +0 -0
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
{
|
|
23
23
|
"name": "droid-brain",
|
|
24
24
|
"description": "Your scratchpad (or brain) - a collaborative space for planning and research. Create docs with /brain plan, /brain research, or /brain review. Use @mentions for async discussion. Docs persist across sessions.",
|
|
25
|
-
"version": "0.
|
|
25
|
+
"version": "0.3.0",
|
|
26
26
|
"source": {
|
|
27
27
|
"source": "github",
|
|
28
28
|
"repo": "orderful/droid",
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
{
|
|
36
36
|
"name": "droid-coach",
|
|
37
37
|
"description": "Learning-mode AI assistance - AI as coach, not crutch. Use /coach plan for co-authored planning, /coach scaffold for structure with hints, /coach review for Socratic questions.",
|
|
38
|
-
"version": "0.
|
|
38
|
+
"version": "0.2.0",
|
|
39
39
|
"source": {
|
|
40
40
|
"source": "github",
|
|
41
41
|
"repo": "orderful/droid",
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
{
|
|
49
49
|
"name": "droid-code-review",
|
|
50
50
|
"description": "Comprehensive code review using specialized agents. Reviews PRs, staged changes, branches, or specific files with confidence scoring.",
|
|
51
|
-
"version": "0.
|
|
51
|
+
"version": "0.2.0",
|
|
52
52
|
"source": {
|
|
53
53
|
"source": "github",
|
|
54
54
|
"repo": "orderful/droid",
|
|
@@ -61,7 +61,7 @@
|
|
|
61
61
|
{
|
|
62
62
|
"name": "droid-codex",
|
|
63
63
|
"description": "Shared organizational knowledge - PRDs, tech designs, domains, proposals, patterns, and explored topics. Use when loading project context, searching codex, capturing decisions, or creating new entries.",
|
|
64
|
-
"version": "0.1.
|
|
64
|
+
"version": "0.1.6",
|
|
65
65
|
"source": {
|
|
66
66
|
"source": "github",
|
|
67
67
|
"repo": "orderful/droid",
|
|
@@ -74,7 +74,7 @@
|
|
|
74
74
|
{
|
|
75
75
|
"name": "droid-comments",
|
|
76
76
|
"description": "Enable inline conversations using @droid/@user markers. Tag @droid to ask the AI, AI responds with @{your-name}. Use /comments check to address markers, /comments cleanup to remove resolved threads. Ideal for code review notes and async collaboration.",
|
|
77
|
-
"version": "0.
|
|
77
|
+
"version": "0.3.0",
|
|
78
78
|
"source": {
|
|
79
79
|
"source": "github",
|
|
80
80
|
"repo": "orderful/droid",
|
|
@@ -87,7 +87,7 @@
|
|
|
87
87
|
{
|
|
88
88
|
"name": "droid-project",
|
|
89
89
|
"description": "Manage project context files for persistent AI memory across sessions. Load, update, or create project context before working on multi-session features.",
|
|
90
|
-
"version": "0.
|
|
90
|
+
"version": "0.3.0",
|
|
91
91
|
"source": {
|
|
92
92
|
"source": "github",
|
|
93
93
|
"repo": "orderful/droid",
|
|
@@ -100,7 +100,7 @@
|
|
|
100
100
|
{
|
|
101
101
|
"name": "droid-tech-design",
|
|
102
102
|
"description": "Technical design authoring tool for engineers. Create structured tech design docs with /tech-design start, iterate in brain, publish to codex. Three-document approach: research doc (codebase discoveries) + thought doc (design workspace) + roll-up (clean summary for review).",
|
|
103
|
-
"version": "0.
|
|
103
|
+
"version": "0.2.0",
|
|
104
104
|
"source": {
|
|
105
105
|
"source": "github",
|
|
106
106
|
"repo": "orderful/droid",
|
package/AGENTS.md
CHANGED
|
@@ -50,12 +50,13 @@ src/
|
|
|
50
50
|
|
|
51
51
|
We use **two** terminal UI libraries for different purposes:
|
|
52
52
|
|
|
53
|
-
| Library
|
|
54
|
-
|
|
55
|
-
| **Ink**
|
|
53
|
+
| Library | Purpose | Used In |
|
|
54
|
+
| ------------ | ------------------------------------------- | ------------------------------------------ |
|
|
55
|
+
| **Ink** | Full React-based TUI dashboard | `tui.tsx`, `tui/components/`, `tui/views/` |
|
|
56
56
|
| **Inquirer** | Simple CLI prompts (select, confirm, input) | `skills.ts`, `setup.ts`, `skill-config.ts` |
|
|
57
57
|
|
|
58
58
|
**Why both?**
|
|
59
|
+
|
|
59
60
|
- **Ink** is for the interactive dashboard—stateful, component-based, keyboard navigation
|
|
60
61
|
- **Inquirer** is for quick sequential prompts ("Which tool?", "Configure now? y/n")
|
|
61
62
|
|
|
@@ -78,13 +79,12 @@ Don't consolidate them. Using Ink for simple prompts would be overkill.
|
|
|
78
79
|
|
|
79
80
|
Things that will bite you if you don't know:
|
|
80
81
|
|
|
81
|
-
| Gotcha
|
|
82
|
-
|
|
83
|
-
| Single-line YAML descriptions
|
|
84
|
-
|
|
|
85
|
-
|
|
|
86
|
-
|
|
|
87
|
-
| Changeset package name | npm package is scoped | Use `"@orderful/droid"` not `"droid"` in changesets |
|
|
82
|
+
| Gotcha | Why | What to do |
|
|
83
|
+
| -------------------------------------------- | --------------------------------------------------------------------- | -------------------------------------------------------------------------- |
|
|
84
|
+
| Single-line YAML descriptions | Claude Code's frontmatter parser doesn't handle multiline YAML (`>-`) | Use single-line quoted strings in frontmatter |
|
|
85
|
+
| Bump tool version when skill content changes | Users won't get updates otherwise | Patch bump the tool's TOOL.yaml version |
|
|
86
|
+
| Config-first in commands | User overrides must take precedence | Always read `~/.droid/skills/{skill}/overrides.yaml` before using defaults |
|
|
87
|
+
| Changeset package name | npm package is scoped | Use `"@orderful/droid"` not `"droid"` in changesets |
|
|
88
88
|
|
|
89
89
|
## Testing
|
|
90
90
|
|
|
@@ -96,6 +96,7 @@ bun run screenshot # On-demand TUI screenshot for visual verification
|
|
|
96
96
|
```
|
|
97
97
|
|
|
98
98
|
**When to run what:**
|
|
99
|
+
|
|
99
100
|
- Changed core logic (`lib/`) → `bun test src/`
|
|
100
101
|
- Changed TUI components → `bun run test:tui`
|
|
101
102
|
- Visual changes you want to verify → `bun run screenshot`
|
|
@@ -107,7 +108,7 @@ bun run screenshot # On-demand TUI screenshot for visual verification
|
|
|
107
108
|
2. Add `SKILL.md` with frontmatter:
|
|
108
109
|
```yaml
|
|
109
110
|
---
|
|
110
|
-
name:
|
|
111
|
+
name: { skill }
|
|
111
112
|
description: "{What it does}. Use when {scenarios}. User prompts like {examples}."
|
|
112
113
|
globs: []
|
|
113
114
|
alwaysApply: false
|
|
@@ -124,16 +125,16 @@ bun run screenshot # On-demand TUI screenshot for visual verification
|
|
|
124
125
|
|
|
125
126
|
Each tool has a specific domain. Know where your feature belongs:
|
|
126
127
|
|
|
127
|
-
| Tool
|
|
128
|
-
|
|
129
|
-
| `brain`
|
|
130
|
-
| `coach`
|
|
131
|
-
| `code-review` | PR and code review
|
|
132
|
-
| `codex`
|
|
133
|
-
| `comments`
|
|
134
|
-
| `droid`
|
|
135
|
-
| `project`
|
|
136
|
-
| `tech-design` | Tech design authoring
|
|
128
|
+
| Tool | Purpose | Add skills here when... |
|
|
129
|
+
| ------------- | --------------------------------------- | ----------------------------------------------- |
|
|
130
|
+
| `brain` | Personal scratchpad, planning docs | Working with brain vault, planning, research |
|
|
131
|
+
| `coach` | Learning-mode assistance | Educational interactions, scaffolding |
|
|
132
|
+
| `code-review` | PR and code review | Review-related features |
|
|
133
|
+
| `codex` | Shared org knowledge (PRDs, designs) | Codex content management, org context |
|
|
134
|
+
| `comments` | Inline @mentions in code | Comment handling, async collaboration |
|
|
135
|
+
| `droid` | **Meta-tool only** - updates, discovery | NEVER add skills here - create new tool instead |
|
|
136
|
+
| `project` | Personal project context | Project file management |
|
|
137
|
+
| `tech-design` | Tech design authoring | Tech design workflows |
|
|
137
138
|
|
|
138
139
|
> **Important:** The `droid` tool is special. It only handles update awareness and tool discovery.
|
|
139
140
|
> If you're building a full-featured capability (like tech-design, codex, brain), create a **new tool**.
|
|
@@ -141,6 +142,7 @@ Each tool has a specific domain. Know where your feature belongs:
|
|
|
141
142
|
## Adding a New Tool
|
|
142
143
|
|
|
143
144
|
Create a new tool when the feature:
|
|
145
|
+
|
|
144
146
|
- Has its own user-facing identity (e.g., `/tech-design`, `/deploy`)
|
|
145
147
|
- Doesn't naturally belong to an existing tool's domain
|
|
146
148
|
- Needs its own versioning/release cycle
|
|
@@ -150,24 +152,26 @@ Create a new tool when the feature:
|
|
|
150
152
|
|
|
151
153
|
1. Create directory: `src/tools/{tool}/`
|
|
152
154
|
2. Add `TOOL.yaml`:
|
|
155
|
+
|
|
153
156
|
```yaml
|
|
154
|
-
name: {tool}
|
|
157
|
+
name: { tool }
|
|
155
158
|
description: "What this tool does"
|
|
156
159
|
version: 0.1.0
|
|
157
160
|
status: beta
|
|
158
161
|
|
|
159
162
|
includes:
|
|
160
163
|
skills:
|
|
161
|
-
- name:
|
|
164
|
+
- name: { tool }
|
|
162
165
|
required: true
|
|
163
166
|
commands:
|
|
164
|
-
- name: {tool}
|
|
167
|
+
- name: { tool }
|
|
165
168
|
required: false
|
|
166
169
|
agents: []
|
|
167
170
|
|
|
168
171
|
dependencies: []
|
|
169
172
|
```
|
|
170
|
-
|
|
173
|
+
|
|
174
|
+
3. Create skill: `src/tools/{tool}/skills/{tool}/SKILL.md`
|
|
171
175
|
4. Create command: `src/tools/{tool}/commands/{tool}.md`
|
|
172
176
|
5. Add changeset: `.changeset/{tool}-initial.md`
|
|
173
177
|
|
|
@@ -177,10 +181,10 @@ Create a new tool when the feature:
|
|
|
177
181
|
|
|
178
182
|
Decisions that affect how you work:
|
|
179
183
|
|
|
180
|
-
| Decision
|
|
181
|
-
|
|
182
|
-
| "Scripts" not "tools" for skill CLIs
|
|
183
|
-
| Parallel skills (`{skill}-next`) for risky refactors | Dogfood new implementation alongside original, swap when confident
|
|
184
|
-
| Each .md owns its metadata
|
|
185
|
-
| Ink + Inquirer (not consolidated)
|
|
186
|
-
| Collision detection over prefixing
|
|
184
|
+
| Decision | Rationale |
|
|
185
|
+
| ---------------------------------------------------- | ---------------------------------------------------------------------------------------- |
|
|
186
|
+
| "Scripts" not "tools" for skill CLIs | Avoids terminology collision—droid "tools" are packages, skill "scripts" are executables |
|
|
187
|
+
| Parallel skills (`{skill}-next`) for risky refactors | Dogfood new implementation alongside original, swap when confident |
|
|
188
|
+
| Each .md owns its metadata | Single source of truth per artifact, contributors can bring existing skills as-is |
|
|
189
|
+
| Ink + Inquirer (not consolidated) | Ink for stateful TUI, Inquirer for simple prompts—right tool for each job |
|
|
190
|
+
| Collision detection over prefixing | Detect conflicts at install time rather than polluting command names with prefixes |
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,34 @@
|
|
|
1
1
|
# @orderful/droid
|
|
2
2
|
|
|
3
|
+
## 0.27.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#145](https://github.com/Orderful/droid/pull/145) [`8bce17d`](https://github.com/Orderful/droid/commit/8bce17d98824e796573db1f8a640a8af786fc2d1) Thanks [@frytyler](https://github.com/frytyler)! - Remove droid- prefix from skills and fix command argument passing
|
|
8
|
+
|
|
9
|
+
**Breaking internal changes:**
|
|
10
|
+
- Skills renamed: `droid-brain` → `brain`, `droid-comments` → `comments`, etc.
|
|
11
|
+
- All skill directories now use unprefixed names
|
|
12
|
+
- Automatic cleanup removes old `droid-*` directories on upgrade
|
|
13
|
+
|
|
14
|
+
**Command improvements:**
|
|
15
|
+
- Commands now use explicit instruction pattern for better argument passing in OpenCode
|
|
16
|
+
- Each command file includes examples and quick reference
|
|
17
|
+
- Alias commands (e.g., `/scratchpad`) properly documented as aliases
|
|
18
|
+
|
|
19
|
+
**Platform compatibility:**
|
|
20
|
+
- OpenCode: Receives all commands (for autocomplete)
|
|
21
|
+
- Claude Code: Receives only alias commands (relies on unified skills/commands)
|
|
22
|
+
- Both platforms get unprefixed skill names
|
|
23
|
+
|
|
24
|
+
Tools updated: brain, coach, code-review, codex, comments, project, tech-design
|
|
25
|
+
|
|
26
|
+
### Patch Changes
|
|
27
|
+
|
|
28
|
+
- [#146](https://github.com/Orderful/droid/pull/146) [`2c87b87`](https://github.com/Orderful/droid/commit/2c87b874a38b0f52d1edf77b2995e565f155f251) Thanks [@frytyler](https://github.com/frytyler)! - fix(codex): make CONTEXT.md generation synchronous by default with optional async
|
|
29
|
+
|
|
30
|
+
Changed auto-generation from async-only (with background agents) to flexible approach where LLM can choose synchronous (works everywhere) or asynchronous (Claude Code only). This fixes the issue where CONTEXT.md files were never being generated because background agents weren't working reliably.
|
|
31
|
+
|
|
3
32
|
## 0.26.0
|
|
4
33
|
|
|
5
34
|
### Minor Changes
|
package/dist/bin/droid.js
CHANGED
|
@@ -392,7 +392,9 @@ function getToolsWithUpdates() {
|
|
|
392
392
|
const toolsWithUpdates = [];
|
|
393
393
|
for (const tool of bundledTools) {
|
|
394
394
|
const requiredSkills = tool.includes.skills.filter((s) => s.required).map((s) => s.name);
|
|
395
|
-
const isInstalled = requiredSkills.some(
|
|
395
|
+
const isInstalled = requiredSkills.some(
|
|
396
|
+
(skillName) => skillName in installedTools
|
|
397
|
+
);
|
|
396
398
|
if (isInstalled) {
|
|
397
399
|
const updateStatus = getToolUpdateStatus(tool.name);
|
|
398
400
|
if (updateStatus.hasUpdate) {
|
|
@@ -613,27 +615,38 @@ function createPlatformSyncMigration(version2) {
|
|
|
613
615
|
}
|
|
614
616
|
};
|
|
615
617
|
}
|
|
618
|
+
var PACKAGE_MIGRATIONS = [createPlatformSyncMigration("0.25.0")];
|
|
616
619
|
var TOOL_MIGRATIONS = {
|
|
617
620
|
brain: [createConfigDirMigration("droid-brain", "0.2.3")],
|
|
618
621
|
comments: [createConfigDirMigration("droid-comments", "0.2.6")],
|
|
619
622
|
project: [createConfigDirMigration("droid-project", "0.1.5")],
|
|
620
|
-
coach: [createConfigDirMigration("droid-coach", "0.1.3")]
|
|
621
|
-
// Global migration for the droid meta-tool
|
|
622
|
-
droid: [createPlatformSyncMigration("0.25.0")]
|
|
623
|
+
coach: [createConfigDirMigration("droid-coach", "0.1.3")]
|
|
623
624
|
};
|
|
624
625
|
function getToolMigrations(toolName) {
|
|
625
626
|
return TOOL_MIGRATIONS[toolName] ?? [];
|
|
626
627
|
}
|
|
627
628
|
function getLastMigratedVersion(toolName) {
|
|
628
629
|
const config = loadConfig();
|
|
629
|
-
|
|
630
|
+
if (config.migrations?.tools?.[toolName]) {
|
|
631
|
+
return config.migrations.tools[toolName];
|
|
632
|
+
}
|
|
633
|
+
if (config.migrations && typeof config.migrations[toolName] === "string") {
|
|
634
|
+
return config.migrations[toolName];
|
|
635
|
+
}
|
|
636
|
+
return "0.0.0";
|
|
630
637
|
}
|
|
631
638
|
function setLastMigratedVersion(toolName, version2) {
|
|
632
639
|
const config = loadConfig();
|
|
633
640
|
if (!config.migrations) {
|
|
634
641
|
config.migrations = {};
|
|
635
642
|
}
|
|
636
|
-
config.migrations
|
|
643
|
+
if (!config.migrations.tools) {
|
|
644
|
+
config.migrations.tools = {};
|
|
645
|
+
}
|
|
646
|
+
config.migrations.tools[toolName] = version2;
|
|
647
|
+
if (typeof config.migrations[toolName] === "string") {
|
|
648
|
+
delete config.migrations[toolName];
|
|
649
|
+
}
|
|
637
650
|
saveConfig(config);
|
|
638
651
|
}
|
|
639
652
|
function runMigrations(toolName, fromVersion, toVersion) {
|
|
@@ -677,6 +690,48 @@ function runToolMigrations(toolName, installedVersion) {
|
|
|
677
690
|
}
|
|
678
691
|
return runMigrations(toolName, lastMigrated, installedVersion);
|
|
679
692
|
}
|
|
693
|
+
function runPackageMigrations(packageVersion) {
|
|
694
|
+
const config = loadConfig();
|
|
695
|
+
const lastMigrated = config.migrations?.package ?? "0.0.0";
|
|
696
|
+
if (compareSemver(packageVersion, lastMigrated) <= 0) {
|
|
697
|
+
return { success: true };
|
|
698
|
+
}
|
|
699
|
+
const pendingMigrations = PACKAGE_MIGRATIONS.filter((m) => {
|
|
700
|
+
const afterFrom = compareSemver(m.version, lastMigrated) > 0;
|
|
701
|
+
const beforeOrAtTo = compareSemver(m.version, packageVersion) <= 0;
|
|
702
|
+
return afterFrom && beforeOrAtTo;
|
|
703
|
+
});
|
|
704
|
+
if (pendingMigrations.length === 0) {
|
|
705
|
+
config.migrations = config.migrations || {};
|
|
706
|
+
config.migrations.package = packageVersion;
|
|
707
|
+
saveConfig(config);
|
|
708
|
+
return { success: true };
|
|
709
|
+
}
|
|
710
|
+
const configDir = getConfigDir();
|
|
711
|
+
for (const migration of pendingMigrations) {
|
|
712
|
+
try {
|
|
713
|
+
migration.up(configDir);
|
|
714
|
+
logMigration("package", lastMigrated, migration.version, "OK");
|
|
715
|
+
} catch (error) {
|
|
716
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
717
|
+
logMigration(
|
|
718
|
+
"package",
|
|
719
|
+
lastMigrated,
|
|
720
|
+
migration.version,
|
|
721
|
+
"FAILED",
|
|
722
|
+
errorMessage
|
|
723
|
+
);
|
|
724
|
+
return {
|
|
725
|
+
success: false,
|
|
726
|
+
error: `Package migration ${migration.version} failed: ${errorMessage}`
|
|
727
|
+
};
|
|
728
|
+
}
|
|
729
|
+
}
|
|
730
|
+
config.migrations = config.migrations || {};
|
|
731
|
+
config.migrations.package = packageVersion;
|
|
732
|
+
saveConfig(config);
|
|
733
|
+
return { success: true };
|
|
734
|
+
}
|
|
680
735
|
|
|
681
736
|
// src/lib/skills.ts
|
|
682
737
|
var DROID_SKILLS_START = "<!-- droid-skills-start -->";
|
|
@@ -861,6 +916,13 @@ function installSkill(skillName) {
|
|
|
861
916
|
message: `Invalid skill manifest for '${skillName}'`
|
|
862
917
|
};
|
|
863
918
|
}
|
|
919
|
+
const toolManifest = loadToolManifest(toolDir);
|
|
920
|
+
if (!toolManifest) {
|
|
921
|
+
return {
|
|
922
|
+
success: false,
|
|
923
|
+
message: `Invalid tool manifest for tool containing '${skillName}'`
|
|
924
|
+
};
|
|
925
|
+
}
|
|
864
926
|
if (manifest.dependencies) {
|
|
865
927
|
for (const dep of manifest.dependencies) {
|
|
866
928
|
if (!isToolInstalled(dep)) {
|
|
@@ -875,31 +937,39 @@ function installSkill(skillName) {
|
|
|
875
937
|
const targetSkillDir = join7(skillsPath, skillName);
|
|
876
938
|
const commandsPath = getCommandsInstallPath(config.platform);
|
|
877
939
|
const tools = getPlatformTools(config);
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
940
|
+
const renamedSkills = [
|
|
941
|
+
"comments",
|
|
942
|
+
"brain",
|
|
943
|
+
"project",
|
|
944
|
+
"coach",
|
|
945
|
+
"code-review",
|
|
946
|
+
"codex",
|
|
947
|
+
"tech-design",
|
|
948
|
+
"brain-obsidian"
|
|
949
|
+
];
|
|
950
|
+
if (renamedSkills.includes(skillName)) {
|
|
951
|
+
const droidPrefixedName = `droid-${skillName}`;
|
|
952
|
+
const droidPrefixedDir = join7(skillsPath, droidPrefixedName);
|
|
953
|
+
if (existsSync5(droidPrefixedDir)) {
|
|
882
954
|
try {
|
|
883
|
-
rmSync2(
|
|
955
|
+
rmSync2(droidPrefixedDir, { recursive: true });
|
|
884
956
|
} catch (error) {
|
|
885
957
|
console.warn(
|
|
886
|
-
`Warning: Could not remove old skill directory ${
|
|
958
|
+
`Warning: Could not remove old skill directory ${droidPrefixedDir}: ${error}`
|
|
887
959
|
);
|
|
888
960
|
}
|
|
889
961
|
}
|
|
890
|
-
if (tools[
|
|
891
|
-
delete tools[
|
|
962
|
+
if (tools[droidPrefixedName]) {
|
|
963
|
+
delete tools[droidPrefixedName];
|
|
892
964
|
setPlatformTools(config, tools);
|
|
893
965
|
saveConfig(config);
|
|
894
966
|
}
|
|
895
967
|
}
|
|
896
968
|
const commandsSource = join7(toolDir, "commands");
|
|
897
969
|
const agentsSource = join7(toolDir, "agents");
|
|
898
|
-
const
|
|
899
|
-
const isAlreadyInstalled = tools[skillName] || oldSkillName && tools[oldSkillName];
|
|
970
|
+
const isAlreadyInstalled = tools[skillName];
|
|
900
971
|
if (!isAlreadyInstalled) {
|
|
901
972
|
const toolName2 = basename(toolDir);
|
|
902
|
-
const normalizedToolName = toolName2.replace(/^droid-/, "");
|
|
903
973
|
if (existsSync5(commandsSource)) {
|
|
904
974
|
const commandFiles = readdirSync4(commandsSource).filter(
|
|
905
975
|
(f) => f.endsWith(".md") && f.toLowerCase() !== "readme.md"
|
|
@@ -908,7 +978,7 @@ function installSkill(skillName) {
|
|
|
908
978
|
const targetCommandPath = join7(commandsPath, file);
|
|
909
979
|
if (existsSync5(targetCommandPath)) {
|
|
910
980
|
const commandName = file.replace(".md", "");
|
|
911
|
-
if (commandName === toolName2
|
|
981
|
+
if (commandName === toolName2) {
|
|
912
982
|
continue;
|
|
913
983
|
}
|
|
914
984
|
return {
|
|
@@ -982,10 +1052,18 @@ function installSkill(skillName) {
|
|
|
982
1052
|
(f) => f.endsWith(".md") && f.toLowerCase() !== "readme.md"
|
|
983
1053
|
);
|
|
984
1054
|
for (const file of commandFiles) {
|
|
985
|
-
const
|
|
986
|
-
const
|
|
987
|
-
|
|
988
|
-
|
|
1055
|
+
const commandName = file.replace(".md", "");
|
|
1056
|
+
const commandMeta = toolManifest.includes.commands.find(
|
|
1057
|
+
(cmd) => (typeof cmd === "string" ? cmd : cmd.name) === commandName
|
|
1058
|
+
);
|
|
1059
|
+
const isAlias = typeof commandMeta === "object" && commandMeta.is_alias;
|
|
1060
|
+
const shouldInstall = config.platform === "opencode" /* OpenCode */ || isAlias;
|
|
1061
|
+
if (shouldInstall) {
|
|
1062
|
+
const sourcePath = join7(commandsSource, file);
|
|
1063
|
+
const targetPath = join7(commandsPath, file);
|
|
1064
|
+
const content = readFileSync5(sourcePath, "utf-8");
|
|
1065
|
+
writeFileSync3(targetPath, content);
|
|
1066
|
+
}
|
|
989
1067
|
}
|
|
990
1068
|
}
|
|
991
1069
|
const installedAgents = [];
|
|
@@ -2985,8 +3063,8 @@ function App() {
|
|
|
2985
3063
|
}
|
|
2986
3064
|
});
|
|
2987
3065
|
useEffect(() => {
|
|
2988
|
-
const
|
|
2989
|
-
|
|
3066
|
+
const packageVersion = getVersion();
|
|
3067
|
+
runPackageMigrations(packageVersion);
|
|
2990
3068
|
}, []);
|
|
2991
3069
|
useEffect(() => {
|
|
2992
3070
|
const autoUpdateConfig = getAutoUpdateConfig();
|
package/dist/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
// src/lib/types.ts
|
|
2
|
-
var Platform = /* @__PURE__ */ ((
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
return
|
|
2
|
+
var Platform = /* @__PURE__ */ ((Platform2) => {
|
|
3
|
+
Platform2["ClaudeCode"] = "claude-code";
|
|
4
|
+
Platform2["OpenCode"] = "opencode";
|
|
5
|
+
return Platform2;
|
|
6
6
|
})(Platform || {});
|
|
7
7
|
var AIToolValue = Platform;
|
|
8
8
|
function getAITag() {
|
|
@@ -578,27 +578,38 @@ function createPlatformSyncMigration(version) {
|
|
|
578
578
|
}
|
|
579
579
|
};
|
|
580
580
|
}
|
|
581
|
+
var PACKAGE_MIGRATIONS = [createPlatformSyncMigration("0.25.0")];
|
|
581
582
|
var TOOL_MIGRATIONS = {
|
|
582
583
|
brain: [createConfigDirMigration("droid-brain", "0.2.3")],
|
|
583
584
|
comments: [createConfigDirMigration("droid-comments", "0.2.6")],
|
|
584
585
|
project: [createConfigDirMigration("droid-project", "0.1.5")],
|
|
585
|
-
coach: [createConfigDirMigration("droid-coach", "0.1.3")]
|
|
586
|
-
// Global migration for the droid meta-tool
|
|
587
|
-
droid: [createPlatformSyncMigration("0.25.0")]
|
|
586
|
+
coach: [createConfigDirMigration("droid-coach", "0.1.3")]
|
|
588
587
|
};
|
|
589
588
|
function getToolMigrations(toolName) {
|
|
590
589
|
return TOOL_MIGRATIONS[toolName] ?? [];
|
|
591
590
|
}
|
|
592
591
|
function getLastMigratedVersion(toolName) {
|
|
593
592
|
const config = loadConfig();
|
|
594
|
-
|
|
593
|
+
if (config.migrations?.tools?.[toolName]) {
|
|
594
|
+
return config.migrations.tools[toolName];
|
|
595
|
+
}
|
|
596
|
+
if (config.migrations && typeof config.migrations[toolName] === "string") {
|
|
597
|
+
return config.migrations[toolName];
|
|
598
|
+
}
|
|
599
|
+
return "0.0.0";
|
|
595
600
|
}
|
|
596
601
|
function setLastMigratedVersion(toolName, version) {
|
|
597
602
|
const config = loadConfig();
|
|
598
603
|
if (!config.migrations) {
|
|
599
604
|
config.migrations = {};
|
|
600
605
|
}
|
|
601
|
-
config.migrations
|
|
606
|
+
if (!config.migrations.tools) {
|
|
607
|
+
config.migrations.tools = {};
|
|
608
|
+
}
|
|
609
|
+
config.migrations.tools[toolName] = version;
|
|
610
|
+
if (typeof config.migrations[toolName] === "string") {
|
|
611
|
+
delete config.migrations[toolName];
|
|
612
|
+
}
|
|
602
613
|
saveConfig(config);
|
|
603
614
|
}
|
|
604
615
|
function runMigrations(toolName, fromVersion, toVersion) {
|
|
@@ -875,6 +886,13 @@ function installSkill(skillName) {
|
|
|
875
886
|
message: `Invalid skill manifest for '${skillName}'`
|
|
876
887
|
};
|
|
877
888
|
}
|
|
889
|
+
const toolManifest = loadToolManifest(toolDir);
|
|
890
|
+
if (!toolManifest) {
|
|
891
|
+
return {
|
|
892
|
+
success: false,
|
|
893
|
+
message: `Invalid tool manifest for tool containing '${skillName}'`
|
|
894
|
+
};
|
|
895
|
+
}
|
|
878
896
|
if (manifest.dependencies) {
|
|
879
897
|
for (const dep of manifest.dependencies) {
|
|
880
898
|
if (!isToolInstalled(dep)) {
|
|
@@ -889,31 +907,39 @@ function installSkill(skillName) {
|
|
|
889
907
|
const targetSkillDir = join7(skillsPath, skillName);
|
|
890
908
|
const commandsPath = getCommandsInstallPath(config.platform);
|
|
891
909
|
const tools = getPlatformTools(config);
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
|
|
910
|
+
const renamedSkills = [
|
|
911
|
+
"comments",
|
|
912
|
+
"brain",
|
|
913
|
+
"project",
|
|
914
|
+
"coach",
|
|
915
|
+
"code-review",
|
|
916
|
+
"codex",
|
|
917
|
+
"tech-design",
|
|
918
|
+
"brain-obsidian"
|
|
919
|
+
];
|
|
920
|
+
if (renamedSkills.includes(skillName)) {
|
|
921
|
+
const droidPrefixedName = `droid-${skillName}`;
|
|
922
|
+
const droidPrefixedDir = join7(skillsPath, droidPrefixedName);
|
|
923
|
+
if (existsSync5(droidPrefixedDir)) {
|
|
896
924
|
try {
|
|
897
|
-
rmSync2(
|
|
925
|
+
rmSync2(droidPrefixedDir, { recursive: true });
|
|
898
926
|
} catch (error) {
|
|
899
927
|
console.warn(
|
|
900
|
-
`Warning: Could not remove old skill directory ${
|
|
928
|
+
`Warning: Could not remove old skill directory ${droidPrefixedDir}: ${error}`
|
|
901
929
|
);
|
|
902
930
|
}
|
|
903
931
|
}
|
|
904
|
-
if (tools[
|
|
905
|
-
delete tools[
|
|
932
|
+
if (tools[droidPrefixedName]) {
|
|
933
|
+
delete tools[droidPrefixedName];
|
|
906
934
|
setPlatformTools(config, tools);
|
|
907
935
|
saveConfig(config);
|
|
908
936
|
}
|
|
909
937
|
}
|
|
910
938
|
const commandsSource = join7(toolDir, "commands");
|
|
911
939
|
const agentsSource = join7(toolDir, "agents");
|
|
912
|
-
const
|
|
913
|
-
const isAlreadyInstalled = tools[skillName] || oldSkillName && tools[oldSkillName];
|
|
940
|
+
const isAlreadyInstalled = tools[skillName];
|
|
914
941
|
if (!isAlreadyInstalled) {
|
|
915
942
|
const toolName2 = basename(toolDir);
|
|
916
|
-
const normalizedToolName = toolName2.replace(/^droid-/, "");
|
|
917
943
|
if (existsSync5(commandsSource)) {
|
|
918
944
|
const commandFiles = readdirSync4(commandsSource).filter(
|
|
919
945
|
(f) => f.endsWith(".md") && f.toLowerCase() !== "readme.md"
|
|
@@ -922,7 +948,7 @@ function installSkill(skillName) {
|
|
|
922
948
|
const targetCommandPath = join7(commandsPath, file);
|
|
923
949
|
if (existsSync5(targetCommandPath)) {
|
|
924
950
|
const commandName = file.replace(".md", "");
|
|
925
|
-
if (commandName === toolName2
|
|
951
|
+
if (commandName === toolName2) {
|
|
926
952
|
continue;
|
|
927
953
|
}
|
|
928
954
|
return {
|
|
@@ -996,10 +1022,18 @@ function installSkill(skillName) {
|
|
|
996
1022
|
(f) => f.endsWith(".md") && f.toLowerCase() !== "readme.md"
|
|
997
1023
|
);
|
|
998
1024
|
for (const file of commandFiles) {
|
|
999
|
-
const
|
|
1000
|
-
const
|
|
1001
|
-
|
|
1002
|
-
|
|
1025
|
+
const commandName = file.replace(".md", "");
|
|
1026
|
+
const commandMeta = toolManifest.includes.commands.find(
|
|
1027
|
+
(cmd) => (typeof cmd === "string" ? cmd : cmd.name) === commandName
|
|
1028
|
+
);
|
|
1029
|
+
const isAlias = typeof commandMeta === "object" && commandMeta.is_alias;
|
|
1030
|
+
const shouldInstall = config.platform === "opencode" /* OpenCode */ || isAlias;
|
|
1031
|
+
if (shouldInstall) {
|
|
1032
|
+
const sourcePath = join7(commandsSource, file);
|
|
1033
|
+
const targetPath = join7(commandsPath, file);
|
|
1034
|
+
const content = readFileSync5(sourcePath, "utf-8");
|
|
1035
|
+
writeFileSync3(targetPath, content);
|
|
1036
|
+
}
|
|
1003
1037
|
}
|
|
1004
1038
|
}
|
|
1005
1039
|
const installedAgents = [];
|
package/dist/lib/migrations.d.ts
CHANGED
|
@@ -27,4 +27,12 @@ export declare function runToolMigrations(toolName: string, installedVersion: st
|
|
|
27
27
|
success: boolean;
|
|
28
28
|
error?: string;
|
|
29
29
|
};
|
|
30
|
+
/**
|
|
31
|
+
* Run package-level migrations
|
|
32
|
+
* Call this on TUI startup with package version from package.json
|
|
33
|
+
*/
|
|
34
|
+
export declare function runPackageMigrations(packageVersion: string): {
|
|
35
|
+
success: boolean;
|
|
36
|
+
error?: string;
|
|
37
|
+
};
|
|
30
38
|
//# sourceMappingURL=migrations.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../src/lib/migrations.ts"],"names":[],"mappings":"AAUA,OAAO,EACL,KAAK,SAAS,EAIf,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../src/lib/migrations.ts"],"names":[],"mappings":"AAUA,OAAO,EACL,KAAK,SAAS,EAIf,MAAM,SAAS,CAAC;AAsKjB;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,CAE/D;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAc/D;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GACd,IAAI,CAmBN;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,GAChB;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CA2CtC;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,MAAM,EAChB,gBAAgB,EAAE,MAAM,GACvB;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAStC;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,cAAc,EAAE,MAAM,GAAG;IAC5D,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAqDA"}
|
package/dist/lib/skills.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skills.d.ts","sourceRoot":"","sources":["../../src/lib/skills.ts"],"names":[],"mappings":"AAYA,OAAO,EACL,QAAQ,EACR,WAAW,EACX,KAAK,aAAa,EAClB,KAAK,cAAc,EAGpB,MAAM,SAAS,CAAC;AAkBjB;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAE/D;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAEjE;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAEhE;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,QAAQ,EAClB,eAAe,EAAE,MAAM,EAAE,GACxB,IAAI,CAyCN;AAwBD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CA2BxE;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,SAAS,EAAE,MAAM,GAChB;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAwB9C;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,aAAa,EAAE,CA4BlD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAI3D;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI,CAI1E;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG;IACvD,SAAS,EAAE,OAAO,CAAC;IACnB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B,CAkBA;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,KAAK,CAAC;IAC5C,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC,CAqBD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG;IAC9C,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB,CA+BA;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI;IACjC,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC3D,MAAM,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/C,QAAQ,EAAE,MAAM,CAAC;CAClB,CAiCA;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG;IAC/C,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB,
|
|
1
|
+
{"version":3,"file":"skills.d.ts","sourceRoot":"","sources":["../../src/lib/skills.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/tools.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/lib/tools.ts"],"names":[],"mappings":"AAKA,OAAO,
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/lib/tools.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,KAAK,YAAY,EAIlB,MAAM,SAAS,CAAC;AAMjB;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAyBrE;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,YAAY,EAAE,CAmBhD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAczD;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAiCvE;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,CAuBpE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,cAAc,EAAE,CA2BtD"}
|