@profoundlogic/coderflow-server 0.2.8 → 0.3.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/coder-server.js +1 -1
- package/dist/config/cli-models.json +1 -0
- package/dist/config.js +1 -1
- package/dist/lib/agent-keepalive.js +1 -1
- package/dist/lib/api-keys.js +1 -1
- package/dist/lib/apiKeys.js +1 -1
- package/dist/lib/app-server-ports.js +1 -1
- package/dist/lib/auto-judge.js +1 -1
- package/dist/lib/basic-auth.js +1 -1
- package/dist/lib/build-history.js +1 -1
- package/dist/lib/build-output-service.js +1 -1
- package/dist/lib/build-scheduler.js +1 -1
- package/dist/lib/build-service.js +1 -1
- package/dist/lib/ca-certificates.js +1 -1
- package/dist/lib/claude-oauth-refresh.js +1 -1
- package/dist/lib/cli/build.js +1 -1
- package/dist/lib/cli/config-command.js +1 -1
- package/dist/lib/cli/config.js +1 -1
- package/dist/lib/cli/create-user.js +1 -1
- package/dist/lib/cli/init.js +1 -1
- package/dist/lib/cli/jira.js +1 -1
- package/dist/lib/cli/license.js +1 -1
- package/dist/lib/cli/server-manager.js +1 -1
- package/dist/lib/container-tokens.js +1 -1
- package/dist/lib/data-dir.js +1 -1
- package/dist/lib/deployment-history.js +1 -1
- package/dist/lib/deployment-service.js +1 -1
- package/dist/lib/docker-utils.js +1 -1
- package/dist/lib/email.js +1 -1
- package/dist/lib/emailTemplates.js +1 -1
- package/dist/lib/entitlement.js +1 -1
- package/dist/lib/fetch-utils.js +1 -1
- package/dist/lib/git-commit-details-route.js +1 -1
- package/dist/lib/git-history-diff-guardrails.js +1 -1
- package/dist/lib/git-provider-service.js +1 -1
- package/dist/lib/git-provider-setup/github-setup-handler.js +1 -1
- package/dist/lib/git-provider-setup/index.js +1 -1
- package/dist/lib/git-provider-setup/setup-factory.js +1 -1
- package/dist/lib/git-provider-setup/setup-interface.js +1 -1
- package/dist/lib/git-providers/azure-devops-provider.js +1 -1
- package/dist/lib/git-providers/github-app-provider.js +1 -1
- package/dist/lib/git-providers/index.js +1 -1
- package/dist/lib/git-providers/provider-factory.js +1 -1
- package/dist/lib/git-providers/provider-interface.js +1 -1
- package/dist/lib/github-urls.js +1 -1
- package/dist/lib/group-objective-linking.js +1 -1
- package/dist/lib/jira-client.js +1 -1
- package/dist/lib/judge-blinding.js +1 -1
- package/dist/lib/logger.js +1 -1
- package/dist/lib/model-fetcher.js +1 -1
- package/dist/lib/notifications.js +1 -1
- package/dist/lib/oidc-auth.js +1 -1
- package/dist/lib/oidc-device-flow.js +1 -1
- package/dist/lib/passwordTokens.js +1 -1
- package/dist/lib/pin-cascade.js +1 -1
- package/dist/lib/provider-accounts.js +1 -1
- package/dist/lib/provider-oauth.js +1 -1
- package/dist/lib/provider-profile.js +1 -1
- package/dist/lib/provider-token-refresh.js +1 -1
- package/dist/lib/request-url.js +1 -1
- package/dist/lib/rewind.js +1 -1
- package/dist/lib/roles.js +1 -1
- package/dist/lib/secrets.js +1 -1
- package/dist/lib/setup-repo-git-auth.js +1 -1
- package/dist/lib/state-capture.js +1 -1
- package/dist/lib/static-files.js +1 -1
- package/dist/lib/task-name-generator.js +1 -1
- package/dist/lib/user-git-oauth.js +1 -1
- package/dist/lib/user-git-tokens.js +1 -1
- package/dist/lib/users.js +1 -1
- package/dist/middleware/requireAuth.js +1 -1
- package/dist/middleware/requireInit.js +1 -1
- package/dist/middleware/requirePermission.js +1 -1
- package/dist/package.json +1 -1
- package/dist/routes/apiKeys.js +1 -1
- package/dist/routes/auth-oidc.js +1 -1
- package/dist/routes/auth.js +1 -1
- package/dist/routes/build.js +1 -1
- package/dist/routes/containers.js +1 -1
- package/dist/routes/deploy-task.js +1 -1
- package/dist/routes/environment-management.js +1 -1
- package/dist/routes/environments.js +1 -1
- package/dist/routes/external-skills.js +1 -1
- package/dist/routes/git-credentials.js +1 -1
- package/dist/routes/git-oauth.js +1 -1
- package/dist/routes/git-provider-setup.js +1 -1
- package/dist/routes/health.js +1 -1
- package/dist/routes/jira.js +1 -1
- package/dist/routes/objective-management.js +1 -1
- package/dist/routes/password.js +1 -1
- package/dist/routes/prompt.js +1 -1
- package/dist/routes/provider-auth.js +1 -1
- package/dist/routes/qa.js +1 -1
- package/dist/routes/settings.js +1 -1
- package/dist/routes/skill-management.js +1 -1
- package/dist/routes/skills.js +1 -1
- package/dist/routes/tasks.js +1 -1
- package/dist/routes/templates.js +1 -1
- package/dist/routes/test-task.js +1 -1
- package/dist/routes/test.js +1 -1
- package/dist/routes/users.js +1 -1
- package/dist/routes/visualizations.js +1 -1
- package/dist/scripts/create-user.js +1 -1
- package/dist/shipped-skills/skill-editor/SKILL.md +124 -231
- package/dist/start.js +1 -1
- package/dist/web-ui/public/activity-detail-modal.js +1 -1
- package/dist/web-ui/public/activity-feed.js +1 -1
- package/dist/web-ui/public/activity-formatters.js +1 -1
- package/dist/web-ui/public/agent-event-parser.js +1 -1
- package/dist/web-ui/public/app.js +1 -1
- package/dist/web-ui/public/approve-dialog.js +1 -1
- package/dist/web-ui/public/comments-widget.js +1 -1
- package/dist/web-ui/public/diff-utils.js +1 -1
- package/dist/web-ui/public/environments.css +81 -1
- package/dist/web-ui/public/environments.html +8 -3
- package/dist/web-ui/public/environments.js +1 -1
- package/dist/web-ui/public/feedback-widget.js +1 -1
- package/dist/web-ui/public/git-history-lazy-utils.js +1 -1
- package/dist/web-ui/public/git-history.html +1 -1
- package/dist/web-ui/public/git-history.js +1 -1
- package/dist/web-ui/public/git-status.js +1 -1
- package/dist/web-ui/public/index.js +1 -1
- package/dist/web-ui/public/login.js +1 -1
- package/dist/web-ui/public/markdown-editor.js +1 -1
- package/dist/web-ui/public/markdown-file-editor.js +1 -1
- package/dist/web-ui/public/modal-maximize.js +1 -1
- package/dist/web-ui/public/notifications.js +1 -1
- package/dist/web-ui/public/server-health.js +1 -1
- package/dist/web-ui/public/settings.js +1 -1
- package/dist/web-ui/public/setup-password.js +1 -1
- package/dist/web-ui/public/skills.css +110 -3
- package/dist/web-ui/public/skills.html +7 -4
- package/dist/web-ui/public/skills.js +1 -1
- package/dist/web-ui/public/sse-client.js +1 -1
- package/dist/web-ui/public/sse-shared-worker.js +1 -1
- package/dist/web-ui/public/styles.css +128 -1
- package/dist/web-ui/public/task.html +22 -1
- package/dist/web-ui/public/task.js +1 -1
- package/dist/web-ui/public/terminal.js +1 -1
- package/dist/web-ui/public/theme.js +1 -1
- package/dist/web-ui/public/users.js +1 -1
- package/dist/web-ui/public/variant-grouping.js +1 -1
- package/package.json +1 -1
|
@@ -1,87 +1,114 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: Skill Editor
|
|
3
|
-
description:
|
|
4
|
-
argument-hint: list | view <skill-id> | update <skill-id> |
|
|
3
|
+
description: Full CRUD management for environment skills and their files, including create, update, delete, and unassign operations.
|
|
4
|
+
argument-hint: list | view <skill-id> | create <skill-id> | update <skill-id> | delete <skill-id> [--force] [--unassign-only] | file list <skill-id> | file read <skill-id> <path> | file write <skill-id> <path> | file delete <skill-id> <path>
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# Skill Editor Skill
|
|
8
8
|
|
|
9
|
-
This skill
|
|
9
|
+
This skill provides full management for skills assigned to the current environment:
|
|
10
|
+
- Skill-level operations: list, view, create, update, delete, and unassign
|
|
11
|
+
- File-level operations: list, read, create/update, and delete for supporting files
|
|
10
12
|
|
|
11
|
-
|
|
13
|
+
Use this when users want direct control over skill behavior and skill file contents.
|
|
12
14
|
|
|
13
|
-
|
|
15
|
+
## Scope And Guardrails
|
|
14
16
|
|
|
15
|
-
|
|
17
|
+
- This skill can only modify non-read-only skills that are assigned to the current environment.
|
|
18
|
+
- System skills and read-only imported skills are blocked by the API.
|
|
19
|
+
- Use explicit user intent for destructive operations (`delete` at skill level, recursive directory deletion at file level).
|
|
20
|
+
- If user intent is already clear and explicit, execute directly; do not add unnecessary confirmation loops.
|
|
16
21
|
|
|
17
|
-
|
|
22
|
+
## Available Commands
|
|
18
23
|
|
|
19
|
-
|
|
24
|
+
### 1. List Skills (`/skill-editor list`)
|
|
20
25
|
|
|
21
|
-
|
|
22
|
-
- The user wants to see what skills can be modified
|
|
23
|
-
- You need to identify which skill to update
|
|
26
|
+
List editable skills assigned to the current environment.
|
|
24
27
|
|
|
25
28
|
### 2. View Skill (`/skill-editor view <skill-id>`)
|
|
26
29
|
|
|
27
|
-
|
|
30
|
+
Fetch skill metadata and body from `SKILL.md`, plus top-level supporting entries.
|
|
31
|
+
|
|
32
|
+
### 3. Create Skill (`/skill-editor create <skill-id>`)
|
|
28
33
|
|
|
29
|
-
|
|
30
|
-
-
|
|
31
|
-
-
|
|
34
|
+
Create a new skill with required fields:
|
|
35
|
+
- `id`
|
|
36
|
+
- `name`
|
|
37
|
+
- `description`
|
|
38
|
+
- `body`
|
|
32
39
|
|
|
33
|
-
|
|
40
|
+
Optional:
|
|
41
|
+
- `allowed-tools`
|
|
42
|
+
- `model`
|
|
43
|
+
- `argument-hint`
|
|
44
|
+
- `assignToEnvironment` (default `true`)
|
|
34
45
|
|
|
35
|
-
Update
|
|
46
|
+
### 4. Update Skill (`/skill-editor update <skill-id>`)
|
|
36
47
|
|
|
37
|
-
|
|
38
|
-
-
|
|
39
|
-
-
|
|
40
|
-
-
|
|
48
|
+
Patch one or more fields on `SKILL.md` frontmatter/body:
|
|
49
|
+
- `name`
|
|
50
|
+
- `description`
|
|
51
|
+
- `body`
|
|
52
|
+
- `allowed-tools`
|
|
53
|
+
- `model`
|
|
54
|
+
- `argument-hint`
|
|
41
55
|
|
|
42
|
-
###
|
|
56
|
+
### 5. Delete Or Unassign Skill (`/skill-editor delete <skill-id> [--force] [--unassign-only]`)
|
|
43
57
|
|
|
44
|
-
|
|
58
|
+
Two supported modes:
|
|
59
|
+
- `delete` (default): remove the skill directory and unassign it from environments
|
|
60
|
+
- `unassign`: remove the skill from only the current environment, keep files on disk
|
|
45
61
|
|
|
46
|
-
|
|
47
|
-
-
|
|
48
|
-
-
|
|
49
|
-
- A new capability should be available for future tasks
|
|
62
|
+
Rules:
|
|
63
|
+
- If deleting a skill that is assigned to other environments, `force=true` is required.
|
|
64
|
+
- Without `force`, delete is limited to the current environment.
|
|
50
65
|
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
-
|
|
54
|
-
-
|
|
66
|
+
### 6. File Operations
|
|
67
|
+
|
|
68
|
+
- List files from skill details: `/skill-editor file list <skill-id>`
|
|
69
|
+
- Read file: `/skill-editor file read <skill-id> <path>`
|
|
70
|
+
- Write file: `/skill-editor file write <skill-id> <path>`
|
|
71
|
+
- Delete file or directory: `/skill-editor file delete <skill-id> <path>`
|
|
72
|
+
|
|
73
|
+
Notes:
|
|
74
|
+
- `PUT` creates parent directories automatically.
|
|
75
|
+
- `DELETE` supports files and directories (directories are recursive).
|
|
76
|
+
- `SKILL.md` must be modified via skill update (`PATCH /skills/:skillId`) and cannot be deleted via file delete endpoint.
|
|
55
77
|
|
|
56
78
|
## How It Works
|
|
57
79
|
|
|
58
|
-
This skill
|
|
80
|
+
This skill uses the task-scoped skill management API.
|
|
81
|
+
|
|
82
|
+
### Environment Variables
|
|
59
83
|
|
|
60
|
-
|
|
61
|
-
- `
|
|
62
|
-
|
|
84
|
+
- `CODERFLOW_SERVER_URL` - Base URL for CoderFlow server
|
|
85
|
+
- `TASK_ID` - Task identifier used for auth (`X-Task-Id`)
|
|
86
|
+
|
|
87
|
+
### API Endpoints
|
|
63
88
|
|
|
64
|
-
### API Endpoints:
|
|
65
89
|
- `GET /api/skill-management/skills` - List editable skills
|
|
66
|
-
- `POST /api/skill-management/skills` - Create a
|
|
90
|
+
- `POST /api/skill-management/skills` - Create a skill
|
|
67
91
|
- `GET /api/skill-management/skills/:skillId` - Get skill details
|
|
68
92
|
- `PATCH /api/skill-management/skills/:skillId` - Update skill
|
|
93
|
+
- `DELETE /api/skill-management/skills/:skillId` - Delete or unassign skill (`mode`, `force`)
|
|
69
94
|
- `GET /api/skill-management/skills/:skillId/files/*` - Read supporting file
|
|
70
|
-
- `PUT /api/skill-management/skills/:skillId/files/*` -
|
|
95
|
+
- `PUT /api/skill-management/skills/:skillId/files/*` - Create/update supporting file
|
|
96
|
+
- `DELETE /api/skill-management/skills/:skillId/files/*` - Delete supporting file or directory
|
|
71
97
|
|
|
72
98
|
## Skill Structure
|
|
73
99
|
|
|
74
|
-
|
|
75
|
-
1.
|
|
76
|
-
2.
|
|
100
|
+
Each skill is a directory under `skills/<skill-id>/` containing:
|
|
101
|
+
1. `SKILL.md` (required)
|
|
102
|
+
2. Supporting files/directories (optional)
|
|
77
103
|
|
|
78
104
|
### SKILL.md Frontmatter
|
|
105
|
+
|
|
79
106
|
```yaml
|
|
80
107
|
---
|
|
81
108
|
name: Display Name
|
|
82
|
-
description: Brief description
|
|
83
|
-
argument-hint: optional argument
|
|
84
|
-
model: optional model override
|
|
109
|
+
description: Brief description
|
|
110
|
+
argument-hint: optional argument hints
|
|
111
|
+
model: optional model override
|
|
85
112
|
allowed-tools:
|
|
86
113
|
- Read
|
|
87
114
|
- Write
|
|
@@ -90,237 +117,103 @@ allowed-tools:
|
|
|
90
117
|
```
|
|
91
118
|
|
|
92
119
|
### SKILL.md Body
|
|
93
|
-
The body contains the detailed skill instructions that guide the AI agent.
|
|
94
|
-
|
|
95
|
-
## Usage Examples
|
|
96
|
-
|
|
97
|
-
### Listing Skills
|
|
98
|
-
|
|
99
|
-
```
|
|
100
|
-
User: "What skills can I edit?"
|
|
101
|
-
|
|
102
|
-
Agent: I'll list the editable skills for this environment.
|
|
103
|
-
|
|
104
|
-
[Executes API call]
|
|
105
|
-
|
|
106
|
-
Editable skills in this environment:
|
|
107
|
-
1. **code-review** - Performs code review with best practices (editable)
|
|
108
|
-
2. **test-generator** - Generates unit tests (editable)
|
|
109
|
-
3. **documentation** - System documentation skill (read-only)
|
|
110
|
-
|
|
111
|
-
Would you like to view or modify any of these?
|
|
112
|
-
```
|
|
113
|
-
|
|
114
|
-
### Viewing a Skill
|
|
115
|
-
|
|
116
|
-
```
|
|
117
|
-
User: "Show me the code-review skill"
|
|
118
|
-
|
|
119
|
-
Agent: I'll fetch the code-review skill details.
|
|
120
|
-
|
|
121
|
-
[Executes API call]
|
|
122
|
-
|
|
123
|
-
**code-review** skill:
|
|
124
|
-
- Description: Performs code review with best practices
|
|
125
|
-
- Model: (default)
|
|
126
|
-
- Allowed tools: Read, Grep, Glob
|
|
127
120
|
|
|
128
|
-
|
|
129
|
-
```markdown
|
|
130
|
-
# Code Review Skill
|
|
121
|
+
The body contains the operative instructions used by the AI.
|
|
131
122
|
|
|
132
|
-
|
|
133
|
-
- Code quality and readability
|
|
134
|
-
- Potential bugs
|
|
135
|
-
- Performance issues
|
|
136
|
-
- Security concerns
|
|
137
|
-
...
|
|
138
|
-
```
|
|
139
|
-
|
|
140
|
-
Would you like to update this skill?
|
|
141
|
-
```
|
|
142
|
-
|
|
143
|
-
### Updating a Skill
|
|
144
|
-
|
|
145
|
-
```
|
|
146
|
-
User: "Add security review to the code-review skill"
|
|
147
|
-
|
|
148
|
-
Agent: I'll help you update the code-review skill. Let me fetch the current content first...
|
|
149
|
-
|
|
150
|
-
[Fetches skill]
|
|
151
|
-
|
|
152
|
-
I propose updating the skill body to include a dedicated security review section:
|
|
153
|
-
|
|
154
|
-
```diff
|
|
155
|
-
# Code Review Skill
|
|
123
|
+
## Implementation
|
|
156
124
|
|
|
157
|
-
|
|
158
|
-
- Code quality and readability
|
|
159
|
-
- Potential bugs
|
|
160
|
-
- Performance issues
|
|
161
|
-
- Security concerns
|
|
125
|
+
### List Skills
|
|
162
126
|
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
+- [ ] XSS prevention
|
|
167
|
-
+- [ ] Authentication/authorization checks
|
|
168
|
-
+- [ ] Sensitive data handling
|
|
169
|
-
+- [ ] Dependency vulnerabilities
|
|
127
|
+
```bash
|
|
128
|
+
curl -s "${CODERFLOW_SERVER_URL}/api/skill-management/skills" \
|
|
129
|
+
-H "X-Task-Id: ${TASK_ID}"
|
|
170
130
|
```
|
|
171
131
|
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
User: "Yes, update it"
|
|
132
|
+
### View Skill
|
|
175
133
|
|
|
176
|
-
|
|
177
|
-
|
|
134
|
+
```bash
|
|
135
|
+
curl -s "${CODERFLOW_SERVER_URL}/api/skill-management/skills/<skill-id>" \
|
|
136
|
+
-H "X-Task-Id: ${TASK_ID}"
|
|
178
137
|
```
|
|
179
138
|
|
|
180
|
-
###
|
|
139
|
+
### Create Skill
|
|
181
140
|
|
|
141
|
+
```bash
|
|
142
|
+
curl -s -X POST "${CODERFLOW_SERVER_URL}/api/skill-management/skills" \
|
|
143
|
+
-H "Content-Type: application/json" \
|
|
144
|
+
-H "X-Task-Id: ${TASK_ID}" \
|
|
145
|
+
-d '{
|
|
146
|
+
"id": "db-migration",
|
|
147
|
+
"name": "Database Migration",
|
|
148
|
+
"description": "Run and validate database migrations",
|
|
149
|
+
"body": "# Database Migration Skill\\n\\nGuide the user through...",
|
|
150
|
+
"allowed-tools": ["Bash", "Read", "Write"],
|
|
151
|
+
"assignToEnvironment": true
|
|
152
|
+
}'
|
|
182
153
|
```
|
|
183
|
-
User: "I keep doing the same database migration workflow. Can you create a skill for it?"
|
|
184
|
-
|
|
185
|
-
Agent: I'll help you create a new skill for database migrations. Based on the workflow we've been using, here's what I propose:
|
|
186
154
|
|
|
187
|
-
|
|
188
|
-
**Name:** Database Migration
|
|
189
|
-
**Description:** Run and validate database migrations with rollback support
|
|
190
|
-
|
|
191
|
-
**Instructions:**
|
|
192
|
-
```markdown
|
|
193
|
-
# Database Migration Skill
|
|
155
|
+
### Update Skill
|
|
194
156
|
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
...
|
|
157
|
+
```bash
|
|
158
|
+
curl -s -X PATCH "${CODERFLOW_SERVER_URL}/api/skill-management/skills/<skill-id>" \
|
|
159
|
+
-H "Content-Type: application/json" \
|
|
160
|
+
-H "X-Task-Id: ${TASK_ID}" \
|
|
161
|
+
-d '{
|
|
162
|
+
"description": "Updated description",
|
|
163
|
+
"body": "# Updated Skill\\n\\n..."
|
|
164
|
+
}'
|
|
202
165
|
```
|
|
203
166
|
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
User: "Yes, create it"
|
|
167
|
+
### Delete Skill (Current Environment)
|
|
207
168
|
|
|
208
|
-
|
|
209
|
-
|
|
169
|
+
```bash
|
|
170
|
+
curl -s -X DELETE "${CODERFLOW_SERVER_URL}/api/skill-management/skills/<skill-id>" \
|
|
171
|
+
-H "X-Task-Id: ${TASK_ID}"
|
|
210
172
|
```
|
|
211
173
|
|
|
212
|
-
|
|
174
|
+
### Force Delete Skill From All Environments
|
|
213
175
|
|
|
214
|
-
### List Editable Skills
|
|
215
176
|
```bash
|
|
216
|
-
curl -s "${CODERFLOW_SERVER_URL}/api/skill-management/skills" \
|
|
177
|
+
curl -s -X DELETE "${CODERFLOW_SERVER_URL}/api/skill-management/skills/<skill-id>?force=true" \
|
|
217
178
|
-H "X-Task-Id: ${TASK_ID}"
|
|
218
179
|
```
|
|
219
180
|
|
|
220
|
-
|
|
221
|
-
```json
|
|
222
|
-
{
|
|
223
|
-
"skills": [
|
|
224
|
-
{"id": "code-review", "name": "Code Review", "description": "...", "editable": true}
|
|
225
|
-
],
|
|
226
|
-
"environment": "my-environment"
|
|
227
|
-
}
|
|
228
|
-
```
|
|
181
|
+
### Unassign Skill Only (Keep Files)
|
|
229
182
|
|
|
230
|
-
### Get Skill Details
|
|
231
183
|
```bash
|
|
232
|
-
curl -s "${CODERFLOW_SERVER_URL}/api/skill-management/skills
|
|
184
|
+
curl -s -X DELETE "${CODERFLOW_SERVER_URL}/api/skill-management/skills/<skill-id>?mode=unassign" \
|
|
233
185
|
-H "X-Task-Id: ${TASK_ID}"
|
|
234
186
|
```
|
|
235
187
|
|
|
236
|
-
|
|
237
|
-
```json
|
|
238
|
-
{
|
|
239
|
-
"id": "code-review",
|
|
240
|
-
"name": "Code Review",
|
|
241
|
-
"description": "Performs code review with best practices",
|
|
242
|
-
"body": "# Code Review Skill\n\n...",
|
|
243
|
-
"allowed-tools": ["Read", "Grep", "Glob"],
|
|
244
|
-
"model": null,
|
|
245
|
-
"argument-hint": null,
|
|
246
|
-
"files": [{"name": "checklist.md", "type": "file"}],
|
|
247
|
-
"environment": "my-environment"
|
|
248
|
-
}
|
|
249
|
-
```
|
|
188
|
+
### Read Supporting File
|
|
250
189
|
|
|
251
|
-
### Update Skill
|
|
252
190
|
```bash
|
|
253
|
-
curl -s
|
|
254
|
-
-H "
|
|
255
|
-
-H "X-Task-Id: ${TASK_ID}" \
|
|
256
|
-
-d '{
|
|
257
|
-
"description": "Updated description",
|
|
258
|
-
"body": "# Updated Code Review Skill\n\n..."
|
|
259
|
-
}'
|
|
191
|
+
curl -s "${CODERFLOW_SERVER_URL}/api/skill-management/skills/<skill-id>/files/<path>" \
|
|
192
|
+
-H "X-Task-Id: ${TASK_ID}"
|
|
260
193
|
```
|
|
261
194
|
|
|
262
|
-
|
|
263
|
-
```json
|
|
264
|
-
{
|
|
265
|
-
"success": true,
|
|
266
|
-
"id": "code-review",
|
|
267
|
-
"environment": "my-environment",
|
|
268
|
-
"updatedAt": "2024-01-15T10:30:00Z"
|
|
269
|
-
}
|
|
270
|
-
```
|
|
195
|
+
### Write Supporting File
|
|
271
196
|
|
|
272
|
-
### Create Skill
|
|
273
197
|
```bash
|
|
274
|
-
curl -s -X
|
|
198
|
+
curl -s -X PUT "${CODERFLOW_SERVER_URL}/api/skill-management/skills/<skill-id>/files/<path>" \
|
|
275
199
|
-H "Content-Type: application/json" \
|
|
276
200
|
-H "X-Task-Id: ${TASK_ID}" \
|
|
277
201
|
-d '{
|
|
278
|
-
"
|
|
279
|
-
"name": "Database Migration",
|
|
280
|
-
"description": "Run and validate database migrations with rollback support",
|
|
281
|
-
"body": "# Database Migration Skill\n\nGuide the user through...",
|
|
282
|
-
"allowed-tools": ["Bash", "Read", "Write"],
|
|
283
|
-
"assignToEnvironment": true
|
|
202
|
+
"content": "# Examples\\n\\n..."
|
|
284
203
|
}'
|
|
285
204
|
```
|
|
286
205
|
|
|
287
|
-
|
|
288
|
-
```json
|
|
289
|
-
{
|
|
290
|
-
"success": true,
|
|
291
|
-
"id": "db-migration",
|
|
292
|
-
"environment": "my-environment",
|
|
293
|
-
"createdAt": "2024-01-15T10:30:00Z",
|
|
294
|
-
"createdByTaskId": "task-123",
|
|
295
|
-
"createdByUserId": "user-456",
|
|
296
|
-
"assigned": true
|
|
297
|
-
}
|
|
298
|
-
```
|
|
206
|
+
### Delete Supporting File Or Directory
|
|
299
207
|
|
|
300
|
-
### Read Supporting File
|
|
301
208
|
```bash
|
|
302
|
-
curl -s "${CODERFLOW_SERVER_URL}/api/skill-management/skills
|
|
209
|
+
curl -s -X DELETE "${CODERFLOW_SERVER_URL}/api/skill-management/skills/<skill-id>/files/<path>" \
|
|
303
210
|
-H "X-Task-Id: ${TASK_ID}"
|
|
304
211
|
```
|
|
305
212
|
|
|
306
|
-
### Update Supporting File
|
|
307
|
-
```bash
|
|
308
|
-
curl -s -X PUT "${CODERFLOW_SERVER_URL}/api/skill-management/skills/code-review/files/examples.md" \
|
|
309
|
-
-H "Content-Type: application/json" \
|
|
310
|
-
-H "X-Task-Id: ${TASK_ID}" \
|
|
311
|
-
-d '{
|
|
312
|
-
"content": "# Examples\n\n..."
|
|
313
|
-
}'
|
|
314
|
-
```
|
|
315
|
-
|
|
316
213
|
## Important Notes
|
|
317
214
|
|
|
318
|
-
1.
|
|
319
|
-
2.
|
|
320
|
-
3.
|
|
321
|
-
4.
|
|
322
|
-
5.
|
|
323
|
-
6. **Document Changes**: Update the description if the skill's purpose changes
|
|
324
|
-
7. **Supporting Files**: Skills may have supporting files that can also be edited
|
|
325
|
-
8. **Skill ID Format**: When creating skills, use lowercase alphanumeric characters with hyphens (e.g., `my-new-skill`)
|
|
326
|
-
9. **Auto-Assignment**: New skills are automatically assigned to the current environment by default (use `assignToEnvironment: false` to skip)
|
|
215
|
+
1. Preserve valid frontmatter when updating `SKILL.md`.
|
|
216
|
+
2. Prefer precise file paths for file operations (including nested paths).
|
|
217
|
+
3. `SKILL.md` updates must go through skill update endpoint, not file write endpoint.
|
|
218
|
+
4. Skill deletions can affect multiple environments when `force=true`; call this out before execution.
|
|
219
|
+
5. If skill assignment or visibility behavior changes, verify with a follow-up list/view call.
|