dev3000 0.0.174 → 0.0.176
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/README.md +0 -4
- package/dist/cdp-monitor.d.ts +5 -1
- package/dist/cdp-monitor.d.ts.map +1 -1
- package/dist/cdp-monitor.js +273 -46
- package/dist/cdp-monitor.js.map +1 -1
- package/dist/cli.js +154 -217
- package/dist/cli.js.map +1 -1
- package/dist/commands/crawl.d.ts.map +1 -1
- package/dist/commands/crawl.js +4 -43
- package/dist/commands/crawl.js.map +1 -1
- package/dist/commands/errors.d.ts.map +1 -1
- package/dist/commands/errors.js +4 -53
- package/dist/commands/errors.js.map +1 -1
- package/dist/commands/fix.d.ts.map +1 -1
- package/dist/commands/fix.js +5 -74
- package/dist/commands/fix.js.map +1 -1
- package/dist/commands/logs.d.ts.map +1 -1
- package/dist/commands/logs.js +4 -53
- package/dist/commands/logs.js.map +1 -1
- package/dist/commands/skill-runner.d.ts +15 -0
- package/dist/commands/skill-runner.d.ts.map +1 -0
- package/dist/commands/skill-runner.js +615 -0
- package/dist/commands/skill-runner.js.map +1 -0
- package/dist/dev-environment.d.ts +6 -3
- package/dist/dev-environment.d.ts.map +1 -1
- package/dist/dev-environment.js +123 -105
- package/dist/dev-environment.js.map +1 -1
- package/dist/skills/d3k/internal-skill.md +145 -0
- package/dist/skills/index.test.ts +28 -1
- package/dist/skills/index.ts +58 -7
- package/dist/utils/agent-browser.d.ts.map +1 -1
- package/dist/utils/agent-browser.js +6 -3
- package/dist/utils/agent-browser.js.map +1 -1
- package/dist/utils/agent-detection.d.ts +1 -0
- package/dist/utils/agent-detection.d.ts.map +1 -1
- package/dist/utils/agent-detection.js +11 -0
- package/dist/utils/agent-detection.js.map +1 -1
- package/dist/utils/agent-selection.js +3 -3
- package/dist/utils/agent-selection.js.map +1 -1
- package/dist/utils/browser-command-argv.d.ts +1 -1
- package/dist/utils/browser-command-argv.d.ts.map +1 -1
- package/dist/utils/browser-command-argv.js +1 -1
- package/dist/utils/browser-command-argv.js.map +1 -1
- package/dist/utils/cli-options.d.ts +5 -0
- package/dist/utils/cli-options.d.ts.map +1 -0
- package/dist/utils/cli-options.js +36 -0
- package/dist/utils/cli-options.js.map +1 -0
- package/dist/utils/project-name.d.ts +2 -0
- package/dist/utils/project-name.d.ts.map +1 -1
- package/dist/utils/project-name.js +6 -0
- package/dist/utils/project-name.js.map +1 -1
- package/dist/utils/session.d.ts +14 -0
- package/dist/utils/session.d.ts.map +1 -0
- package/dist/utils/session.js +65 -0
- package/dist/utils/session.js.map +1 -0
- package/dist/utils/version-check.js +2 -2
- package/dist/utils/version-check.js.map +1 -1
- package/package.json +10 -19
- package/dist/commands/cloud-check-pr.d.ts +0 -9
- package/dist/commands/cloud-check-pr.d.ts.map +0 -1
- package/dist/commands/cloud-check-pr.js +0 -243
- package/dist/commands/cloud-check-pr.js.map +0 -1
- package/dist/commands/cloud-fix.d.ts +0 -13
- package/dist/commands/cloud-fix.d.ts.map +0 -1
- package/dist/commands/cloud-fix.js +0 -79
- package/dist/commands/cloud-fix.js.map +0 -1
- package/dist/commands/find-component.d.ts +0 -8
- package/dist/commands/find-component.d.ts.map +0 -1
- package/dist/commands/find-component.js +0 -182
- package/dist/commands/find-component.js.map +0 -1
- package/dist/skills/d3k/SKILL.md +0 -126
- package/dist/skills/index.d.ts +0 -46
- package/dist/skills/index.d.ts.map +0 -1
- package/dist/skills/index.js +0 -174
- package/dist/skills/index.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"find-component.js","sourceRoot":"","sources":["../../src/commands/find-component.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAC9C,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,KAAK,MAAM,OAAO,CAAA;AAOzB,SAAS,kBAAkB;IACzB,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,MAAM,CAAC,CAAA;IAC1C,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5B,OAAO,EAAE,CAAA;IACX,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,WAAW,CAAC,UAAU,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAA;QAChE,MAAM,QAAQ,GAAc,EAAE,CAAA;QAE9B,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBACxB,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,EAAE,cAAc,CAAC,CAAA;gBAChE,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;oBAC5B,IAAI,CAAC;wBACH,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAA;wBAC9D,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;4BAChB,IAAI,CAAC;gCACH,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;gCAC5B,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;4BACxB,CAAC;4BAAC,MAAM,CAAC;gCACP,sBAAsB;4BACxB,CAAC;wBACH,CAAC;oBACH,CAAC;oBAAC,MAAM,CAAC;wBACP,qBAAqB;oBACvB,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,QAAQ,CAAA;IACjB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAA;IACX,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,IAAc;IACrC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC,eAAe,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE;YAC3E,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,KAAK;SACf,CAAC,CAAA;QAEF,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE,EAAE,CAAA;QACvD,CAAC;aAAM,CAAC;YACN,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,IAAI,eAAe,EAAE,CAAA;QACtF,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAA;IAC3F,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,QAAgB;IAClD,MAAM,QAAQ,GAAG,kBAAkB,EAAE,CAAA;IAErC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC,CAAA;QACzD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC,CAAA;QAC1D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,6BAA6B,QAAQ,EAAE,CAAC,CAAC,CAAA;IAChE,OAAO,CAAC,GAAG,EAAE,CAAA;IAEb,8DAA8D;IAC9D,MAAM,aAAa,GAAG;;0CAEkB,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkD/D,CAAA;IAED,MAAM,MAAM,GAAG,eAAe,CAAC,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,CAAA;IAEvD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,gCAAgC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;QACvE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IAED,IAAI,CAAC;QACH,2BAA2B;QAC3B,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;QAChD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC,CAAA;YACpD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAA;YACtC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;QAErC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;YACzC,IAAI,IAAI,CAAC,KAAK,KAAK,mBAAmB,EAAE,CAAC;gBACvC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,2BAA2B,QAAQ,mCAAmC,CAAC,CAAC,CAAA;YACjG,CAAC;iBAAM,IAAI,IAAI,CAAC,KAAK,KAAK,qBAAqB,EAAE,CAAC;gBAChD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAC,CAAA;YACjF,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,sBAAsB,IAAI,CAAC,aAAa,IAAI,SAAS,EAAE,CAAC,CAAC,CAAA;QACjF,OAAO,CAAC,GAAG,EAAE,CAAA;QAEb,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC,CAAA;YAC/D,OAAO,CAAC,GAAG,EAAE,CAAA;YAEb,yBAAyB;YACzB,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,KAAK,WAAW,EAAE,CAAC;gBAC7D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,uBAAuB,IAAI,CAAC,aAAa,QAAQ,CAAC,CAAC,CAAA;gBAC3E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,oBAAoB,IAAI,CAAC,aAAa,QAAQ,CAAC,CAAC,CAAA;gBACxE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,sBAAsB,IAAI,CAAC,aAAa,QAAQ,CAAC,CAAC,CAAA;YAC5E,CAAC;YAED,sBAAsB;YACtB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAe,EAAE,EAAE;gBACpD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,OAAO,QAAQ,CAAC,CAAC,CAAA;YACxD,CAAC,CAAC,CAAA;QACJ,CAAC;QAED,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,OAAO,CAAC,GAAG,EAAE,CAAA;YACb,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC,CAAA;YACvD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;YACvC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAA;YAC3C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QACzC,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC,CAAA;QAC1D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAA;QACpD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC"}
|
package/dist/skills/d3k/SKILL.md
DELETED
|
@@ -1,126 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: "d3k"
|
|
3
|
-
description: "d3k assistant for debugging web apps"
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# d3k Commands
|
|
7
|
-
|
|
8
|
-
d3k captures browser and server logs in a unified log file. Use these commands:
|
|
9
|
-
|
|
10
|
-
## Viewing Errors and Logs
|
|
11
|
-
|
|
12
|
-
```bash
|
|
13
|
-
d3k errors # Show recent errors (browser + server combined)
|
|
14
|
-
d3k errors --context # Show errors + user actions that preceded them
|
|
15
|
-
d3k errors -n 20 # Show last 20 errors
|
|
16
|
-
|
|
17
|
-
d3k logs # Show recent logs (browser + server combined)
|
|
18
|
-
d3k logs --type browser # Browser logs only
|
|
19
|
-
d3k logs --type server # Server logs only
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
## Other Commands
|
|
23
|
-
|
|
24
|
-
```bash
|
|
25
|
-
d3k fix # Deep analysis of application errors
|
|
26
|
-
d3k fix --focus build # Focus on build errors
|
|
27
|
-
|
|
28
|
-
d3k crawl # Discover app URLs
|
|
29
|
-
d3k crawl --depth all # Exhaustive crawl
|
|
30
|
-
|
|
31
|
-
d3k find-component "nav" # Find React component source
|
|
32
|
-
```
|
|
33
|
-
|
|
34
|
-
## Browser Interaction
|
|
35
|
-
|
|
36
|
-
First run `d3k cdp-port` to get the port number, then use it directly in all browser commands:
|
|
37
|
-
|
|
38
|
-
```bash
|
|
39
|
-
d3k cdp-port # Returns e.g. 9222
|
|
40
|
-
d3k agent-browser --cdp 9222 open http://localhost:3000/page
|
|
41
|
-
d3k agent-browser --cdp 9222 snapshot -i # Get element refs (@e1, @e2)
|
|
42
|
-
d3k agent-browser --cdp 9222 click @e2
|
|
43
|
-
d3k agent-browser --cdp 9222 fill @e3 "text"
|
|
44
|
-
d3k agent-browser --cdp 9222 screenshot /tmp/shot.png
|
|
45
|
-
```
|
|
46
|
-
|
|
47
|
-
## Browser Tool Choice
|
|
48
|
-
|
|
49
|
-
Use the browser tool that matches the task:
|
|
50
|
-
|
|
51
|
-
- `agent-browser`
|
|
52
|
-
- Default choice.
|
|
53
|
-
- Best for generic web apps and for driving the exact headed browser session d3k is already monitoring.
|
|
54
|
-
- Use it when you need `snapshot`, ref-based `click`, `fill`, or to reproduce what the user sees in the monitored tab.
|
|
55
|
-
- `next-browser`
|
|
56
|
-
- Next.js-specific tool.
|
|
57
|
-
- Best for Next/React introspection: `tree`, `errors`, `logs`, `routes`, `project`, and related Next dev-server diagnostics.
|
|
58
|
-
- It is not a drop-in replacement for `agent-browser`: no accessibility `snapshot`, no ref-based `click`, and no `fill`.
|
|
59
|
-
- It runs its own daemon/browser flow and does not use `d3k cdp-port`.
|
|
60
|
-
|
|
61
|
-
Practical rule:
|
|
62
|
-
|
|
63
|
-
- Need to drive the same monitored browser session: use `agent-browser`.
|
|
64
|
-
- Need Next.js component-tree or Next-specific diagnostics: use `next-browser`.
|
|
65
|
-
|
|
66
|
-
Examples:
|
|
67
|
-
|
|
68
|
-
```bash
|
|
69
|
-
# Same monitored browser session
|
|
70
|
-
d3k agent-browser --cdp 9222 snapshot -i
|
|
71
|
-
d3k agent-browser --cdp 9222 click @e2
|
|
72
|
-
|
|
73
|
-
# Next.js-specific inspection
|
|
74
|
-
d3k next-browser open http://localhost:3000
|
|
75
|
-
d3k next-browser tree
|
|
76
|
-
d3k next-browser errors
|
|
77
|
-
d3k next-browser logs
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
To make d3k prefer one locally when it launches helper browser commands, use:
|
|
81
|
-
|
|
82
|
-
```bash
|
|
83
|
-
d3k --browser-tool agent-browser
|
|
84
|
-
d3k --browser-tool next-browser
|
|
85
|
-
```
|
|
86
|
-
|
|
87
|
-
## Fix Workflow
|
|
88
|
-
|
|
89
|
-
1. `d3k errors --context` - See errors and what triggered them
|
|
90
|
-
2. Fix the code
|
|
91
|
-
3. Run `d3k cdp-port` to get the port, then `d3k agent-browser --cdp <port> open <url>` then `click @e1` to replay
|
|
92
|
-
4. `d3k errors` - Verify fix worked
|
|
93
|
-
|
|
94
|
-
## Creating PRs with Before/After Screenshots
|
|
95
|
-
|
|
96
|
-
When creating a PR for visual changes, **always capture before/after screenshots** to show the impact:
|
|
97
|
-
|
|
98
|
-
1. **Before making changes**, screenshot the production site (run `d3k cdp-port` first to get the port):
|
|
99
|
-
```bash
|
|
100
|
-
d3k agent-browser --cdp <port> open https://production-url.com/affected-page
|
|
101
|
-
d3k agent-browser --cdp <port> screenshot /tmp/before.png
|
|
102
|
-
```
|
|
103
|
-
|
|
104
|
-
2. **After making changes**, screenshot localhost:
|
|
105
|
-
```bash
|
|
106
|
-
d3k agent-browser --cdp <port> open http://localhost:3000/affected-page
|
|
107
|
-
d3k agent-browser --cdp <port> screenshot /tmp/after.png
|
|
108
|
-
```
|
|
109
|
-
|
|
110
|
-
3. **Or use the tooling API** to capture multiple routes at once:
|
|
111
|
-
```
|
|
112
|
-
capture_before_after_screenshots(
|
|
113
|
-
productionUrl: "https://myapp.vercel.app",
|
|
114
|
-
routes: ["/", "/about", "/contact"]
|
|
115
|
-
)
|
|
116
|
-
```
|
|
117
|
-
|
|
118
|
-
4. **Include in PR description** using markdown:
|
|
119
|
-
```markdown
|
|
120
|
-
### Visual Comparison
|
|
121
|
-
| Route | Before | After |
|
|
122
|
-
|-------|--------|-------|
|
|
123
|
-
| `/` |  |  |
|
|
124
|
-
```
|
|
125
|
-
|
|
126
|
-
Upload screenshots by dragging them into the GitHub PR description.
|
package/dist/skills/index.d.ts
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Skill module for d3k
|
|
3
|
-
*
|
|
4
|
-
* Skills are managed by `npx skills` and stored in .agents/skills/
|
|
5
|
-
* d3k also bundles its own skill which gets copied to .agents/skills/d3k/ on startup.
|
|
6
|
-
*/
|
|
7
|
-
export interface SkillInfo {
|
|
8
|
-
name: string;
|
|
9
|
-
description: string;
|
|
10
|
-
path: string;
|
|
11
|
-
}
|
|
12
|
-
export interface SkillResult {
|
|
13
|
-
found: boolean;
|
|
14
|
-
name: string;
|
|
15
|
-
content?: string;
|
|
16
|
-
path?: string;
|
|
17
|
-
error?: string;
|
|
18
|
-
availableSkills?: string[];
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* Get the path to d3k's bundled skills directory.
|
|
22
|
-
* Returns null if not found (e.g., running in development without build).
|
|
23
|
-
*/
|
|
24
|
-
export declare function getBundledSkillsPath(): string | null;
|
|
25
|
-
/**
|
|
26
|
-
* Get directories where skills can be found.
|
|
27
|
-
* Skills are managed by `npx skills` in .agents/skills/
|
|
28
|
-
*/
|
|
29
|
-
export declare function getSkillDirectories(cwd?: string): string[];
|
|
30
|
-
/**
|
|
31
|
-
* Find a skill by name.
|
|
32
|
-
*/
|
|
33
|
-
export declare function findSkill(name: string, cwd?: string): string | null;
|
|
34
|
-
/**
|
|
35
|
-
* Get the content of a skill by name.
|
|
36
|
-
*/
|
|
37
|
-
export declare function getSkill(name: string, cwd?: string): SkillResult;
|
|
38
|
-
/**
|
|
39
|
-
* List all available skills.
|
|
40
|
-
*/
|
|
41
|
-
export declare function listAvailableSkills(cwd?: string): string[];
|
|
42
|
-
/**
|
|
43
|
-
* Get detailed info about all available skills.
|
|
44
|
-
*/
|
|
45
|
-
export declare function getSkillsInfo(cwd?: string): SkillInfo[];
|
|
46
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/skills/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,IAAI,EAAE,MAAM,CAAA;CACb;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,OAAO,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;CAC3B;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,GAAG,IAAI,CAkCpD;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAiB1D;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAQnE;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,WAAW,CAuBhE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAgB1D;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,EAAE,CA4BvD"}
|
package/dist/skills/index.js
DELETED
|
@@ -1,174 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Skill module for d3k
|
|
3
|
-
*
|
|
4
|
-
* Skills are managed by `npx skills` and stored in .agents/skills/
|
|
5
|
-
* d3k also bundles its own skill which gets copied to .agents/skills/d3k/ on startup.
|
|
6
|
-
*/
|
|
7
|
-
import { existsSync, readdirSync, readFileSync } from "fs";
|
|
8
|
-
import { homedir } from "os";
|
|
9
|
-
import { dirname, join } from "path";
|
|
10
|
-
import { fileURLToPath } from "url";
|
|
11
|
-
/**
|
|
12
|
-
* Get the path to d3k's bundled skills directory.
|
|
13
|
-
* Returns null if not found (e.g., running in development without build).
|
|
14
|
-
*/
|
|
15
|
-
export function getBundledSkillsPath() {
|
|
16
|
-
// Check if running from compiled binary
|
|
17
|
-
const moduleUrl = import.meta.url;
|
|
18
|
-
const isCompiledBinary = moduleUrl.startsWith("file:///$bunfs") || moduleUrl.startsWith("/$bunfs");
|
|
19
|
-
if (isCompiledBinary) {
|
|
20
|
-
// Try process.argv[0] first (more reliable for Bun compiled binaries)
|
|
21
|
-
// Then fall back to process.execPath
|
|
22
|
-
const possiblePaths = [process.argv[0], process.execPath].filter(Boolean);
|
|
23
|
-
for (const binaryPath of possiblePaths) {
|
|
24
|
-
if (binaryPath && existsSync(binaryPath)) {
|
|
25
|
-
const binDir = dirname(binaryPath);
|
|
26
|
-
const packageDir = dirname(binDir);
|
|
27
|
-
const skillsDir = join(packageDir, "skills");
|
|
28
|
-
if (existsSync(skillsDir)) {
|
|
29
|
-
return skillsDir;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
// Fallback for npm-installed package: look for dist/skills relative to this module
|
|
35
|
-
// import.meta.url is like "file:///path/to/node_modules/dev3000/dist/skills/index.js"
|
|
36
|
-
if (moduleUrl.startsWith("file://")) {
|
|
37
|
-
const modulePath = fileURLToPath(moduleUrl);
|
|
38
|
-
// This file is at dist/skills/index.js, so skills are at dist/skills/
|
|
39
|
-
const skillsDir = dirname(modulePath);
|
|
40
|
-
if (existsSync(join(skillsDir, "d3k", "SKILL.md"))) {
|
|
41
|
-
return skillsDir;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
return null;
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
* Get directories where skills can be found.
|
|
48
|
-
* Skills are managed by `npx skills` in .agents/skills/
|
|
49
|
-
*/
|
|
50
|
-
export function getSkillDirectories(cwd) {
|
|
51
|
-
const dirs = [];
|
|
52
|
-
const projectDir = cwd || process.cwd();
|
|
53
|
-
// Project-local skills (highest priority)
|
|
54
|
-
dirs.push(join(projectDir, ".agents", "skills"));
|
|
55
|
-
// Global skills
|
|
56
|
-
dirs.push(join(homedir(), ".agents", "skills"));
|
|
57
|
-
// d3k's bundled skills (fallback for d3k skill before it's copied)
|
|
58
|
-
const bundled = getBundledSkillsPath();
|
|
59
|
-
if (bundled) {
|
|
60
|
-
dirs.push(bundled);
|
|
61
|
-
}
|
|
62
|
-
return dirs.filter((dir) => existsSync(dir));
|
|
63
|
-
}
|
|
64
|
-
/**
|
|
65
|
-
* Find a skill by name.
|
|
66
|
-
*/
|
|
67
|
-
export function findSkill(name, cwd) {
|
|
68
|
-
for (const dir of getSkillDirectories(cwd)) {
|
|
69
|
-
const skillPath = join(dir, name, "SKILL.md");
|
|
70
|
-
if (existsSync(skillPath)) {
|
|
71
|
-
return skillPath;
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
return null;
|
|
75
|
-
}
|
|
76
|
-
/**
|
|
77
|
-
* Get the content of a skill by name.
|
|
78
|
-
*/
|
|
79
|
-
export function getSkill(name, cwd) {
|
|
80
|
-
const skillPath = findSkill(name, cwd);
|
|
81
|
-
if (skillPath) {
|
|
82
|
-
try {
|
|
83
|
-
const content = readFileSync(skillPath, "utf-8");
|
|
84
|
-
return { found: true, name, content, path: skillPath };
|
|
85
|
-
}
|
|
86
|
-
catch (error) {
|
|
87
|
-
return {
|
|
88
|
-
found: false,
|
|
89
|
-
name,
|
|
90
|
-
error: `Failed to read skill: ${error instanceof Error ? error.message : String(error)}`,
|
|
91
|
-
availableSkills: listAvailableSkills(cwd)
|
|
92
|
-
};
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
return {
|
|
96
|
-
found: false,
|
|
97
|
-
name,
|
|
98
|
-
error: `Skill "${name}" not found`,
|
|
99
|
-
availableSkills: listAvailableSkills(cwd)
|
|
100
|
-
};
|
|
101
|
-
}
|
|
102
|
-
/**
|
|
103
|
-
* List all available skills.
|
|
104
|
-
*/
|
|
105
|
-
export function listAvailableSkills(cwd) {
|
|
106
|
-
const skills = new Set();
|
|
107
|
-
for (const dir of getSkillDirectories(cwd)) {
|
|
108
|
-
try {
|
|
109
|
-
for (const entry of readdirSync(dir, { withFileTypes: true })) {
|
|
110
|
-
if (entry.isDirectory() && existsSync(join(dir, entry.name, "SKILL.md"))) {
|
|
111
|
-
skills.add(entry.name);
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
catch {
|
|
116
|
-
// Directory not readable
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
return Array.from(skills).sort();
|
|
120
|
-
}
|
|
121
|
-
/**
|
|
122
|
-
* Get detailed info about all available skills.
|
|
123
|
-
*/
|
|
124
|
-
export function getSkillsInfo(cwd) {
|
|
125
|
-
const skillsMap = new Map();
|
|
126
|
-
for (const dir of getSkillDirectories(cwd)) {
|
|
127
|
-
try {
|
|
128
|
-
for (const entry of readdirSync(dir, { withFileTypes: true })) {
|
|
129
|
-
if (entry.isDirectory() && !skillsMap.has(entry.name)) {
|
|
130
|
-
const skillPath = join(dir, entry.name, "SKILL.md");
|
|
131
|
-
if (existsSync(skillPath)) {
|
|
132
|
-
try {
|
|
133
|
-
const content = readFileSync(skillPath, "utf-8");
|
|
134
|
-
skillsMap.set(entry.name, {
|
|
135
|
-
name: entry.name,
|
|
136
|
-
description: extractDescription(content),
|
|
137
|
-
path: skillPath
|
|
138
|
-
});
|
|
139
|
-
}
|
|
140
|
-
catch {
|
|
141
|
-
// Skip unreadable
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
catch {
|
|
148
|
-
// Directory not readable
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
return Array.from(skillsMap.values()).sort((a, b) => a.name.localeCompare(b.name));
|
|
152
|
-
}
|
|
153
|
-
/**
|
|
154
|
-
* Extract description from SKILL.md frontmatter or first paragraph.
|
|
155
|
-
*/
|
|
156
|
-
function extractDescription(content) {
|
|
157
|
-
// Try YAML frontmatter
|
|
158
|
-
const frontmatterMatch = content.match(/^---\n([\s\S]*?)\n---/);
|
|
159
|
-
if (frontmatterMatch) {
|
|
160
|
-
const descMatch = frontmatterMatch[1].match(/description:\s*(.+)/);
|
|
161
|
-
if (descMatch) {
|
|
162
|
-
return descMatch[1].trim();
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
// Fallback: first non-heading, non-empty line
|
|
166
|
-
for (const line of content.split("\n")) {
|
|
167
|
-
const trimmed = line.trim();
|
|
168
|
-
if (trimmed && !trimmed.startsWith("#") && !trimmed.startsWith("---")) {
|
|
169
|
-
return trimmed.length > 100 ? `${trimmed.slice(0, 97)}...` : trimmed;
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
|
-
return "No description available";
|
|
173
|
-
}
|
|
174
|
-
//# sourceMappingURL=index.js.map
|
package/dist/skills/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/skills/index.ts"],"names":[],"mappings":"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"}
|