@orderful/droid 0.44.1 → 0.45.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +5 -2
- package/.github/workflows/claude-issue-agent.yml +237 -0
- package/CHANGELOG.md +30 -0
- package/dist/bin/droid.js +53 -23
- package/dist/commands/tui.d.ts.map +1 -1
- package/dist/integrations/granola/index.d.ts +6 -0
- package/dist/integrations/granola/index.d.ts.map +1 -0
- package/dist/integrations/granola/index.ts +28 -0
- package/dist/tools/brain/.claude-plugin/plugin.json +1 -1
- package/dist/tools/brain/TOOL.yaml +1 -1
- package/dist/tools/brain/skills/brain/SKILL.md +6 -0
- package/dist/tools/coach/.claude-plugin/plugin.json +1 -1
- package/dist/tools/coach/TOOL.yaml +5 -1
- package/dist/tools/coach/skills/coach/SKILL.md +31 -5
- package/dist/tools/code-review/.claude-plugin/plugin.json +1 -1
- package/dist/tools/code-review/TOOL.yaml +1 -1
- package/dist/tools/code-review/skills/code-review/SKILL.md +6 -0
- package/dist/tools/codex/.claude-plugin/plugin.json +1 -1
- package/dist/tools/codex/TOOL.yaml +1 -1
- package/dist/tools/codex/skills/codex/SKILL.md +6 -0
- package/dist/tools/comments/.claude-plugin/plugin.json +1 -1
- package/dist/tools/comments/TOOL.yaml +1 -1
- package/dist/tools/comments/skills/comments/SKILL.md +6 -0
- package/dist/tools/droid/.claude-plugin/plugin.json +1 -1
- package/dist/tools/droid/TOOL.yaml +1 -1
- package/dist/tools/droid/skills/droid/SKILL.md +1 -0
- package/dist/tools/droid/skills/droid-bootstrap/SKILL.md +1 -0
- package/dist/tools/edi-schema/.claude-plugin/plugin.json +25 -0
- package/dist/tools/edi-schema/TOOL.yaml +29 -0
- package/dist/tools/edi-schema/agents/edi-schema-agent.md +97 -0
- package/dist/tools/edi-schema/commands/edi-schema.md +33 -0
- package/dist/tools/edi-schema/skills/edi-schema/SKILL.md +86 -0
- package/dist/tools/meeting/.claude-plugin/plugin.json +1 -1
- package/dist/tools/meeting/TOOL.yaml +1 -1
- package/dist/tools/meeting/skills/meeting/SKILL.md +6 -0
- package/dist/tools/plan/.claude-plugin/plugin.json +1 -1
- package/dist/tools/plan/TOOL.yaml +1 -1
- package/dist/tools/plan/skills/plan/SKILL.md +6 -0
- package/dist/tools/project/.claude-plugin/plugin.json +1 -1
- package/dist/tools/project/TOOL.yaml +1 -1
- package/dist/tools/project/skills/project/SKILL.md +6 -0
- package/dist/tools/project/skills/project/references/loading.md +1 -0
- package/dist/tools/release/.claude-plugin/plugin.json +1 -1
- package/dist/tools/release/TOOL.yaml +1 -1
- package/dist/tools/release/skills/release/SKILL.md +7 -0
- package/dist/tools/release/skills/release/references/templates.md +22 -0
- package/dist/tools/release/skills/release/references/workflows.md +28 -4
- package/dist/tools/share/.claude-plugin/plugin.json +1 -1
- package/dist/tools/share/TOOL.yaml +1 -1
- package/dist/tools/share/skills/share/SKILL.md +6 -0
- package/dist/tools/status-update/.claude-plugin/plugin.json +1 -1
- package/dist/tools/status-update/TOOL.yaml +1 -1
- package/dist/tools/status-update/skills/status-update/SKILL.md +6 -0
- package/dist/tools/tech-design/.claude-plugin/plugin.json +1 -1
- package/dist/tools/tech-design/TOOL.yaml +1 -1
- package/dist/tools/tech-design/skills/tech-design/SKILL.md +6 -0
- package/dist/tools/wrapup/.claude-plugin/plugin.json +1 -1
- package/dist/tools/wrapup/TOOL.yaml +6 -2
- package/dist/tools/wrapup/skills/wrapup/SKILL.md +25 -2
- package/dist/tools/wrapup/skills/wrapup/references/output-schema.md +5 -3
- package/dist/tools/wrapup/skills/wrapup/references/subagent-prompts.md +54 -13
- package/package.json +1 -1
- package/src/commands/tui.tsx +11 -0
- package/src/integrations/granola/index.ts +28 -0
- package/src/tools/brain/.claude-plugin/plugin.json +1 -1
- package/src/tools/brain/TOOL.yaml +1 -1
- package/src/tools/brain/skills/brain/SKILL.md +6 -0
- package/src/tools/coach/.claude-plugin/plugin.json +1 -1
- package/src/tools/coach/TOOL.yaml +5 -1
- package/src/tools/coach/skills/coach/SKILL.md +31 -5
- package/src/tools/code-review/.claude-plugin/plugin.json +1 -1
- package/src/tools/code-review/TOOL.yaml +1 -1
- package/src/tools/code-review/skills/code-review/SKILL.md +6 -0
- package/src/tools/codex/.claude-plugin/plugin.json +1 -1
- package/src/tools/codex/TOOL.yaml +1 -1
- package/src/tools/codex/skills/codex/SKILL.md +6 -0
- package/src/tools/comments/.claude-plugin/plugin.json +1 -1
- package/src/tools/comments/TOOL.yaml +1 -1
- package/src/tools/comments/skills/comments/SKILL.md +6 -0
- package/src/tools/droid/.claude-plugin/plugin.json +1 -1
- package/src/tools/droid/TOOL.yaml +1 -1
- package/src/tools/droid/skills/droid/SKILL.md +1 -0
- package/src/tools/droid/skills/droid-bootstrap/SKILL.md +1 -0
- package/src/tools/edi-schema/.claude-plugin/plugin.json +25 -0
- package/src/tools/edi-schema/TOOL.yaml +29 -0
- package/src/tools/edi-schema/agents/edi-schema-agent.md +97 -0
- package/src/tools/edi-schema/commands/edi-schema.md +33 -0
- package/src/tools/edi-schema/skills/edi-schema/SKILL.md +86 -0
- package/src/tools/meeting/.claude-plugin/plugin.json +1 -1
- package/src/tools/meeting/TOOL.yaml +1 -1
- package/src/tools/meeting/skills/meeting/SKILL.md +6 -0
- package/src/tools/plan/.claude-plugin/plugin.json +1 -1
- package/src/tools/plan/TOOL.yaml +1 -1
- package/src/tools/plan/skills/plan/SKILL.md +6 -0
- package/src/tools/project/.claude-plugin/plugin.json +1 -1
- package/src/tools/project/TOOL.yaml +1 -1
- package/src/tools/project/skills/project/SKILL.md +6 -0
- package/src/tools/project/skills/project/references/loading.md +1 -0
- package/src/tools/release/.claude-plugin/plugin.json +1 -1
- package/src/tools/release/TOOL.yaml +1 -1
- package/src/tools/release/skills/release/SKILL.md +7 -0
- package/src/tools/release/skills/release/references/templates.md +22 -0
- package/src/tools/release/skills/release/references/workflows.md +28 -4
- package/src/tools/share/.claude-plugin/plugin.json +1 -1
- package/src/tools/share/TOOL.yaml +1 -1
- package/src/tools/share/skills/share/SKILL.md +6 -0
- package/src/tools/status-update/.claude-plugin/plugin.json +1 -1
- package/src/tools/status-update/TOOL.yaml +1 -1
- package/src/tools/status-update/skills/status-update/SKILL.md +6 -0
- package/src/tools/tech-design/.claude-plugin/plugin.json +1 -1
- package/src/tools/tech-design/TOOL.yaml +1 -1
- package/src/tools/tech-design/skills/tech-design/SKILL.md +6 -0
- package/src/tools/wrapup/.claude-plugin/plugin.json +1 -1
- package/src/tools/wrapup/TOOL.yaml +6 -2
- package/src/tools/wrapup/skills/wrapup/SKILL.md +25 -2
- package/src/tools/wrapup/skills/wrapup/references/output-schema.md +5 -3
- package/src/tools/wrapup/skills/wrapup/references/subagent-prompts.md +54 -13
|
@@ -63,6 +63,12 @@ Think of it like addressing someone in conversation:
|
|
|
63
63
|
|
|
64
64
|
Inline comments shine for localized questions and actions within a file. For longer back-and-forth discussions in documents, they work great too - just be mindful that very long threads may be better moved to dedicated docs.
|
|
65
65
|
|
|
66
|
+
## Custom Instructions
|
|
67
|
+
|
|
68
|
+
Any command accepts a ` -- {instruction}` suffix. Split on the **first** ` -- ` (space-dash-dash-space): left is the command and its args, right is additional context or instruction to carry through the entire execution.
|
|
69
|
+
|
|
70
|
+
Example: `/comments check -- keep responses brief, we're in a tight review cycle`
|
|
71
|
+
|
|
66
72
|
## Context Gathering
|
|
67
73
|
|
|
68
74
|
When you find a `@droid` marker:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "droid",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.1",
|
|
4
4
|
"description": "Core droid meta-skill for update awareness, tool discovery, and usage help. Checks for updates, helps users find tools, and answers 'how do I...' questions about droid workflows.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Orderful",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
name: droid
|
|
2
2
|
description: "Core droid meta-skill for update awareness, tool discovery, and usage help. Checks for updates, helps users find tools, and answers 'how do I...' questions about droid workflows."
|
|
3
|
-
version: 0.7.
|
|
3
|
+
version: 0.7.1
|
|
4
4
|
status: beta
|
|
5
5
|
|
|
6
6
|
# System tool - always stays current regardless of auto-update settings
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: droid
|
|
3
3
|
description: "Core droid meta-skill for updates, tool discovery, usage help, and skill overrides. Use when checking for droid updates, discovering available tools, answering 'how do I...' questions about droid workflows, or customizing skill behaviour. User prompts like 'any droid updates?', 'what tools do I have?', 'what tools do you have?', 'remind me what tools you have', 'hey droid what can you do', 'how do I add context?', 'remind me how to use codex', 'what's the best way to start a session?', 'customize brain search', 'create an override for brain'."
|
|
4
|
+
alwaysApply: true
|
|
4
5
|
allowed-tools: [Bash, Read, Write]
|
|
5
6
|
---
|
|
6
7
|
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "droid-edi-schema",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Query EDI schemas without context overhead. Uses a sub-agent to inspect large schema and code-list files, then returns concise results.",
|
|
5
|
+
"author": {
|
|
6
|
+
"name": "Orderful",
|
|
7
|
+
"url": "https://github.com/orderful"
|
|
8
|
+
},
|
|
9
|
+
"repository": "https://github.com/orderful/droid",
|
|
10
|
+
"license": "MIT",
|
|
11
|
+
"keywords": [
|
|
12
|
+
"droid",
|
|
13
|
+
"ai",
|
|
14
|
+
"edi-schema"
|
|
15
|
+
],
|
|
16
|
+
"skills": [
|
|
17
|
+
"./skills/edi-schema/SKILL.md"
|
|
18
|
+
],
|
|
19
|
+
"commands": [
|
|
20
|
+
"./commands/edi-schema.md"
|
|
21
|
+
],
|
|
22
|
+
"agents": [
|
|
23
|
+
"./agents/edi-schema-agent.md"
|
|
24
|
+
]
|
|
25
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
name: edi-schema
|
|
2
|
+
description: "Query EDI schemas without context overhead. Uses a sub-agent to inspect large schema and code-list files, then returns concise results."
|
|
3
|
+
version: 0.1.0
|
|
4
|
+
status: beta
|
|
5
|
+
|
|
6
|
+
includes:
|
|
7
|
+
skills:
|
|
8
|
+
- name: edi-schema
|
|
9
|
+
required: true
|
|
10
|
+
commands:
|
|
11
|
+
- name: edi-schema
|
|
12
|
+
is_alias: false
|
|
13
|
+
agents:
|
|
14
|
+
- edi-schema-agent
|
|
15
|
+
|
|
16
|
+
dependencies: []
|
|
17
|
+
|
|
18
|
+
prerequisites:
|
|
19
|
+
- name: jq
|
|
20
|
+
description: JSON query tool used for targeted schema extraction
|
|
21
|
+
check: "jq --version"
|
|
22
|
+
install_hint: "brew install jq"
|
|
23
|
+
|
|
24
|
+
config_schema:
|
|
25
|
+
schemas_dir:
|
|
26
|
+
type: string
|
|
27
|
+
description: "Optional absolute path to a repository containing libs/schemas/. If empty, auto-detect from current workspace."
|
|
28
|
+
required: false
|
|
29
|
+
default: ""
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: edi-schema-agent
|
|
3
|
+
description: "Specialized EDI schema query agent. Uses jq and targeted reads to extract precise schema details with minimal output."
|
|
4
|
+
tools:
|
|
5
|
+
- Read
|
|
6
|
+
- Glob
|
|
7
|
+
- Grep
|
|
8
|
+
- Bash
|
|
9
|
+
color: blue
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
You are an EDI schema analysis agent. Your job is to query large schema files and return concise, accurate findings.
|
|
13
|
+
|
|
14
|
+
## Inputs
|
|
15
|
+
|
|
16
|
+
You will receive:
|
|
17
|
+
|
|
18
|
+
1. `schemasRoot`: Absolute repo path containing `libs/schemas/src/lib/data`
|
|
19
|
+
2. `mode`: One of `field-search`, `segments`, `loops`, `codes`, `versions`, `types`
|
|
20
|
+
3. `transactionType`: Full or short transaction type identifier
|
|
21
|
+
4. `schemaFile` (optional): Resolved schema file path for schema-specific modes
|
|
22
|
+
5. `query` (optional): Search text for `field-search`
|
|
23
|
+
6. `elementId` (optional): Element identifier for `codes`
|
|
24
|
+
|
|
25
|
+
## Rules
|
|
26
|
+
|
|
27
|
+
- Prioritize correctness over broad output.
|
|
28
|
+
- Never output full JSON blobs.
|
|
29
|
+
- Keep returned content compact and actionable.
|
|
30
|
+
- Prefer jq for extraction. If jq is missing, use `rg` + targeted reads.
|
|
31
|
+
|
|
32
|
+
## Query Strategies
|
|
33
|
+
|
|
34
|
+
### `field-search`
|
|
35
|
+
|
|
36
|
+
Run exact identifier and title-first queries before fuzzy search:
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
jq '.. | objects | select(.elementIdentifier? == $id)' --arg id "{query}" "{schemaFile}"
|
|
40
|
+
jq '.. | objects | select(.title? == $title)' --arg title "{query}" "{schemaFile}"
|
|
41
|
+
jq '.. | objects | select(.title? | test($q; "i"))' --arg q "{query}" "{schemaFile}"
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
Return top matches including:
|
|
45
|
+
|
|
46
|
+
- `elementIdentifier` (if present)
|
|
47
|
+
- `title`
|
|
48
|
+
- `schemaType`
|
|
49
|
+
- `X12Requirement` / relevant requirement field
|
|
50
|
+
- a concise path hint when derivable
|
|
51
|
+
|
|
52
|
+
### `segments`
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
jq '[.. | objects | select(.schemaType? == "segmentInstance") | {title, requirement: .X12Requirement}] | unique' "{schemaFile}"
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
Return deduplicated segment names and requirement info.
|
|
59
|
+
|
|
60
|
+
### `loops`
|
|
61
|
+
|
|
62
|
+
```bash
|
|
63
|
+
jq '[.. | objects | select(.schemaType? | test("loop")) | {title, schemaType}]' "{schemaFile}"
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
Return loop hierarchy summary. Include parent-child nesting hints if visible.
|
|
67
|
+
|
|
68
|
+
### `codes`
|
|
69
|
+
|
|
70
|
+
Find likely code-list file (for example `x12_004010_codeList.json`), then:
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
jq --arg id "{elementId}" '.[$id]' "{codeListFile}"
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
Return code values and descriptions. If no entry exists, return "not found" and suggest checking identifier/version.
|
|
77
|
+
|
|
78
|
+
### `versions`
|
|
79
|
+
|
|
80
|
+
List available schema filenames matching type in x12 + edifact directories, then normalize to type/version list.
|
|
81
|
+
|
|
82
|
+
### `types`
|
|
83
|
+
|
|
84
|
+
Read `transactionTypes.json` and return a concise sorted list (or filtered list if query provided).
|
|
85
|
+
|
|
86
|
+
## Output Format
|
|
87
|
+
|
|
88
|
+
Respond in markdown with this structure:
|
|
89
|
+
|
|
90
|
+
1. `Resolved:` line (type/version and file used)
|
|
91
|
+
2. `Results:` compact bullets or table
|
|
92
|
+
3. `Notes:` any ambiguity, fallbacks, or missing data
|
|
93
|
+
|
|
94
|
+
If no match:
|
|
95
|
+
|
|
96
|
+
- state that clearly
|
|
97
|
+
- provide 2-5 nearest alternatives when possible
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: edi-schema
|
|
3
|
+
description: "Query EDI schemas (X12/EDIFACT) without context blowup. Find fields, segments, loops, and code-list values."
|
|
4
|
+
argument-hint: "{transactionType|types|versions {transactionType}} [{query|--segments|--loops|--codes {elementId}}]"
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# /edi-schema
|
|
8
|
+
|
|
9
|
+
**User invoked:** `/edi-schema $ARGUMENTS`
|
|
10
|
+
|
|
11
|
+
**Your task:** Invoke the **edi-schema skill** with these arguments.
|
|
12
|
+
|
|
13
|
+
## Examples
|
|
14
|
+
|
|
15
|
+
- `/edi-schema 944_004010 freeFormDescription`
|
|
16
|
+
- `/edi-schema 850 --segments`
|
|
17
|
+
- `/edi-schema 856_004010 --loops`
|
|
18
|
+
- `/edi-schema 850 --codes BEG01`
|
|
19
|
+
- `/edi-schema types`
|
|
20
|
+
- `/edi-schema versions 850`
|
|
21
|
+
|
|
22
|
+
## Quick Reference
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
/edi-schema {transactionType} {query} # Search fields/elements
|
|
26
|
+
/edi-schema {transactionType} --segments # List segment set
|
|
27
|
+
/edi-schema {transactionType} --loops # Show loop structure
|
|
28
|
+
/edi-schema {transactionType} --codes ID # Code-list values for element
|
|
29
|
+
/edi-schema types # List transaction types
|
|
30
|
+
/edi-schema versions {transactionType} # List available versions
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
See the **edi-schema skill** for full behaviour and resolution rules.
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: edi-schema
|
|
3
|
+
description: "Query EDI schemas without consuming parent context. Use when finding fields, loops, segments, requirements, or code-list values for X12/EDIFACT transaction types. User prompts like '/edi-schema 944_004010 freeFormDescription' or '/edi-schema 850 --codes BEG01'."
|
|
4
|
+
argument-hint: "{transactionType|types|versions {transactionType}} [{query|--segments|--loops|--codes {elementId}}]"
|
|
5
|
+
allowed-tools: [Read, Glob, Grep, Bash, Task]
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# EDI Schema Skill
|
|
9
|
+
|
|
10
|
+
Query EDI schemas through a sub-agent so large schema JSON files never enter parent context.
|
|
11
|
+
|
|
12
|
+
## Commands
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
/edi-schema {transactionType} {query}
|
|
16
|
+
/edi-schema {transactionType} --segments
|
|
17
|
+
/edi-schema {transactionType} --loops
|
|
18
|
+
/edi-schema {transactionType} --codes {elementId}
|
|
19
|
+
/edi-schema types
|
|
20
|
+
/edi-schema versions {transactionType}
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## Input Rules
|
|
24
|
+
|
|
25
|
+
- `transactionType` accepts either full form (`850_004010`, `ORDERS_D96A`) or short form (`850`, `ORDERS`).
|
|
26
|
+
- If short form is used, resolve to the most common version and state which version was selected.
|
|
27
|
+
- If multiple plausible versions exist and no safe default is clear, show options and ask user to pick.
|
|
28
|
+
|
|
29
|
+
## Data Sources
|
|
30
|
+
|
|
31
|
+
Expected paths in the target schemas repo:
|
|
32
|
+
|
|
33
|
+
- `libs/schemas/src/lib/data/transactionSchemas/x12/`
|
|
34
|
+
- `libs/schemas/src/lib/data/transactionSchemas/edifact/`
|
|
35
|
+
- `libs/schemas/src/lib/data/codeLists/`
|
|
36
|
+
- `libs/schemas/src/lib/data/transactionTypes.json`
|
|
37
|
+
|
|
38
|
+
## Procedure
|
|
39
|
+
|
|
40
|
+
### 1. Resolve schemas root
|
|
41
|
+
|
|
42
|
+
1. Check `droid config --get tools.edi-schema.schemas_dir`.
|
|
43
|
+
2. If configured and valid, use it.
|
|
44
|
+
3. Otherwise auto-detect from current workspace by finding `libs/schemas/src/lib/data/`.
|
|
45
|
+
4. If not found, ask user for the repo path or suggest setting `tools.edi-schema.schemas_dir`.
|
|
46
|
+
|
|
47
|
+
### 2. Route command
|
|
48
|
+
|
|
49
|
+
- `types`:
|
|
50
|
+
- List transaction types from `transactionTypes.json` (type + description where available).
|
|
51
|
+
- `versions {transactionType}`:
|
|
52
|
+
- List matching schema versions from x12/edifact schema filenames.
|
|
53
|
+
- `{transactionType} --segments`:
|
|
54
|
+
- Ask sub-agent for unique segment list and requirement indicators.
|
|
55
|
+
- `{transactionType} --loops`:
|
|
56
|
+
- Ask sub-agent for loop hierarchy.
|
|
57
|
+
- `{transactionType} --codes {elementId}`:
|
|
58
|
+
- Ask sub-agent for code-list values for the requested element ID.
|
|
59
|
+
- `{transactionType} {query}`:
|
|
60
|
+
- Ask sub-agent to search by identifier/title/business term and return best matches.
|
|
61
|
+
|
|
62
|
+
### 3. Sub-agent handoff
|
|
63
|
+
|
|
64
|
+
Use `edi-schema-agent` for all schema/content queries. Pass:
|
|
65
|
+
|
|
66
|
+
- Resolved schemas root
|
|
67
|
+
- Resolved schema file path + transaction type/version
|
|
68
|
+
- Query mode (`field-search`, `segments`, `loops`, `codes`, `versions`, `types`)
|
|
69
|
+
- User input (`query`, `elementId`)
|
|
70
|
+
|
|
71
|
+
### 4. Response format
|
|
72
|
+
|
|
73
|
+
Keep responses compact and structured:
|
|
74
|
+
|
|
75
|
+
- Header with resolved schema (`850_004010`, etc.)
|
|
76
|
+
- Result table or bullets with identifiers and titles
|
|
77
|
+
- Requirement/type constraints where relevant
|
|
78
|
+
- Path hints (loop/segment path) when available
|
|
79
|
+
- Clear next step if no matches
|
|
80
|
+
|
|
81
|
+
## Behaviour Rules
|
|
82
|
+
|
|
83
|
+
- Never dump the entire schema JSON.
|
|
84
|
+
- Prefer exact identifier match first (for example `BEG01`) before fuzzy title matching.
|
|
85
|
+
- When no exact match, return top fuzzy matches with confidence notes.
|
|
86
|
+
- If jq is unavailable, fall back to `rg`/targeted reads and state that fallback was used.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "droid-meeting",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.2",
|
|
4
4
|
"description": "Work with meeting notes, summaries, and transcripts. List recent meetings, search content, generate context-aware summaries, export to codex. Backed by Granola MCP.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Orderful",
|
|
@@ -35,6 +35,12 @@ If not configured, tell user:
|
|
|
35
35
|
|
|
36
36
|
If connected, proceed.
|
|
37
37
|
|
|
38
|
+
## Custom Instructions
|
|
39
|
+
|
|
40
|
+
Any command accepts a ` -- {instruction}` suffix. Split on the **first** ` -- ` (space-dash-dash-space): left is the command and its args, right is additional context or instruction to carry through the entire execution. Note: flag-style `--all` uses `--flag` syntax (no surrounding spaces) and is distinct from this separator.
|
|
41
|
+
|
|
42
|
+
Example: `/meeting search partner testing review -- extract action items only`
|
|
43
|
+
|
|
38
44
|
## Commands
|
|
39
45
|
|
|
40
46
|
| Command | Action |
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "droid-plan",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.5",
|
|
4
4
|
"description": "Task-scoped planning with portable, structured plans. Use when planning implementation for a PR, ticket, or small feature. User prompts like 'let's plan this', 'can we start a plan', 'think through the implementation'.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Orderful",
|
package/src/tools/plan/TOOL.yaml
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
name: plan
|
|
2
2
|
description: "Task-scoped planning with portable, structured plans. Use when planning implementation for a PR, ticket, or small feature. User prompts like 'let's plan this', 'can we start a plan', 'think through the implementation'."
|
|
3
|
-
version: 0.1.
|
|
3
|
+
version: 0.1.5
|
|
4
4
|
status: alpha
|
|
5
5
|
|
|
6
6
|
includes:
|
|
@@ -30,6 +30,12 @@ Uses config from dependencies:
|
|
|
30
30
|
|
|
31
31
|
**Overrides:** This skill supports user-defined overrides. See `/droid` skill § Skill Overrides.
|
|
32
32
|
|
|
33
|
+
## Custom Instructions
|
|
34
|
+
|
|
35
|
+
Any command accepts a ` -- {instruction}` suffix. Split on the **first** ` -- ` (space-dash-dash-space): left is the command and its args, right is additional context or instruction to carry through the entire execution.
|
|
36
|
+
|
|
37
|
+
Example: `/plan new auth-refactor -- we must stay backward compatible with v1 clients`
|
|
38
|
+
|
|
33
39
|
## Commands
|
|
34
40
|
|
|
35
41
|
| Command | Action |
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "droid-project",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.6",
|
|
4
4
|
"description": "Manage project context files for persistent AI memory across sessions. Load, update, or create project context before working on multi-session features.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Orderful",
|
|
@@ -36,6 +36,12 @@ Chat history disappears. Projects persist.
|
|
|
36
36
|
|
|
37
37
|
**Overrides:** This skill supports user-defined overrides. See `/droid` skill § Skill Overrides.
|
|
38
38
|
|
|
39
|
+
## Custom Instructions
|
|
40
|
+
|
|
41
|
+
Any command accepts a ` -- {instruction}` suffix. Split on the **first** ` -- ` (space-dash-dash-space): left is the command and its args, right is additional context or instruction to carry through the entire execution.
|
|
42
|
+
|
|
43
|
+
Example: `/project search droid -- show me what changed last week`
|
|
44
|
+
|
|
39
45
|
If `projects_dir` is not configured, inform the user they need to set it up:
|
|
40
46
|
```bash
|
|
41
47
|
mkdir -p ~/.droid/skills/project
|
|
@@ -32,6 +32,7 @@
|
|
|
32
32
|
- Confirm which project was loaded
|
|
33
33
|
- Summarize key context (2-3 sentences)
|
|
34
34
|
- Use project contents for all subsequent work in the session
|
|
35
|
+
- **Do NOT read CHANGELOG.md** — it exists for on-demand lookup only. PROJECT.md already references it; that is enough context.
|
|
35
36
|
|
|
36
37
|
7. **If `-- {instruction}` provided:** Execute the follow-up instruction against the loaded project
|
|
37
38
|
|
|
@@ -45,6 +45,12 @@ droid config --get repos
|
|
|
45
45
|
If no repos have `release_branch` set, tell user:
|
|
46
46
|
> "No release repos configured. Run `droid repos add` and set a release branch to get started."
|
|
47
47
|
|
|
48
|
+
## Custom Instructions
|
|
49
|
+
|
|
50
|
+
Any command accepts a ` -- {instruction}` suffix. Split on the **first** ` -- ` (space-dash-dash-space): left is the command and its args, right is additional context or instruction to carry through the entire execution. Note: flag-style `--no-lock` uses `--flag` syntax (no surrounding spaces) and is distinct from this separator.
|
|
51
|
+
|
|
52
|
+
Example: `/release start -- notify #releases-eng channel instead of the default`
|
|
53
|
+
|
|
48
54
|
## Commands
|
|
49
55
|
|
|
50
56
|
| Command | Action |
|
|
@@ -78,3 +84,4 @@ See `references/templates.md` for Slack message and PR body templates.
|
|
|
78
84
|
| Branch already locked | Warn user, offer to unlock first |
|
|
79
85
|
| Release PR already exists | Show existing PR, ask if user wants to proceed |
|
|
80
86
|
| CI checks failing | Show status, do not auto-merge |
|
|
87
|
+
| High-risk label present at merge | Show extra confirmation prompt before standard merge confirmation; do not auto-skip |
|
|
@@ -23,6 +23,13 @@ Posted with :droid:
|
|
|
23
23
|
|
|
24
24
|
If `--no-lock` was used, omit the lock line.
|
|
25
25
|
|
|
26
|
+
If `HIGH_RISK_PRS` is non-empty, append the following block after `{pr_summary}` (before `Posted with :droid:`):
|
|
27
|
+
```
|
|
28
|
+
⚠️ *High-risk PRs:*
|
|
29
|
+
- <{pr_url}|#{number}> {title} (@{author})
|
|
30
|
+
```
|
|
31
|
+
(one line per high-risk PR)
|
|
32
|
+
|
|
26
33
|
Risk emojis:
|
|
27
34
|
- Low Risk: `:large_green_circle:`
|
|
28
35
|
- High Risk: `:warning:`
|
|
@@ -103,6 +110,16 @@ Where `{pr_list}` is a bulleted list of merged PRs:
|
|
|
103
110
|
- #{number} {title} (@{author})
|
|
104
111
|
```
|
|
105
112
|
|
|
113
|
+
If `HIGH_RISK_PRS` is non-empty, insert the following section between `{pr_list}` and the `---` divider:
|
|
114
|
+
```markdown
|
|
115
|
+
### ⚠️ High-Risk PRs
|
|
116
|
+
|
|
117
|
+
The following PRs in this release are labelled `high-risk`. Coordinate with the authors before deploying.
|
|
118
|
+
|
|
119
|
+
- #{number} {title} (@{author})
|
|
120
|
+
```
|
|
121
|
+
(one line per high-risk PR)
|
|
122
|
+
|
|
106
123
|
---
|
|
107
124
|
|
|
108
125
|
## Terminal Fallback
|
|
@@ -120,6 +137,11 @@ Release open for review — {repo_name}
|
|
|
120
137
|
|
|
121
138
|
If `--no-lock` was used, omit the Lock line.
|
|
122
139
|
|
|
140
|
+
If `HIGH_RISK_PRS` is non-empty, append:
|
|
141
|
+
```
|
|
142
|
+
⚠️ High-risk PRs: #{number} {title} (@{author}), ...
|
|
143
|
+
```
|
|
144
|
+
|
|
123
145
|
### Release Merged (terminal)
|
|
124
146
|
```
|
|
125
147
|
Release merged — {repo_name}
|
|
@@ -46,10 +46,21 @@ Create a release PR, auto-lock the release branch, and notify Slack.
|
|
|
46
46
|
# Get commits in release_branch that aren't in production_branch
|
|
47
47
|
gh api repos/{owner}/{repo}/compare/{production_branch}...{release_branch} --jq '.commits[].commit.message'
|
|
48
48
|
```
|
|
49
|
-
Extract PR numbers from commit messages (e.g. `(#1234)`)
|
|
49
|
+
Extract PR numbers from commit messages (e.g. `(#1234)`). For each extracted PR number, fetch metadata including labels:
|
|
50
|
+
```bash
|
|
51
|
+
gh pr view {pr_number} --json number,title,author,labels --repo {owner}/{repo}
|
|
52
|
+
```
|
|
53
|
+
Build the PR list for the body from the results. Collect `HIGH_RISK_PRS` — an array of `{number, title, author}` for any PR whose `labels` array includes an entry with `name: "high-risk"`.
|
|
50
54
|
|
|
51
55
|
**Do NOT use** `gh pr list --base {release_branch} --state merged` — that returns ALL historically merged PRs, not just the ones since the last release.
|
|
52
56
|
|
|
57
|
+
3.5. **Warn if high-risk PRs found** — if `HIGH_RISK_PRS` is non-empty, print a terminal warning:
|
|
58
|
+
```
|
|
59
|
+
⚠️ {n} high-risk PR(s) detected in this release:
|
|
60
|
+
- #{number} {title} (@{author})
|
|
61
|
+
...
|
|
62
|
+
```
|
|
63
|
+
|
|
53
64
|
4. **Ask risk level** — use AskUserQuestion:
|
|
54
65
|
- Low Risk (routine release, no breaking changes)
|
|
55
66
|
- High Risk (breaking changes, data migrations, or high-traffic feature)
|
|
@@ -64,6 +75,11 @@ Create a release PR, auto-lock the release branch, and notify Slack.
|
|
|
64
75
|
--body "{release_pr_body}" \
|
|
65
76
|
--repo {owner}/{repo}
|
|
66
77
|
```
|
|
78
|
+
If `HIGH_RISK_PRS` is non-empty, also add `--label "high-risk"` to the command above. If the `high-risk` label does not exist on the repo, `gh pr create` will fail — in that case, retry without `--label "high-risk"` and warn the user:
|
|
79
|
+
```
|
|
80
|
+
⚠️ Could not apply 'high-risk' label — label does not exist on {repo_name}. Create it in GitHub Labels settings, then add it manually to PR #{number}.
|
|
81
|
+
```
|
|
82
|
+
|
|
67
83
|
See `templates.md` for the PR body template.
|
|
68
84
|
|
|
69
85
|
6. **Auto-lock branch** (unless `--no-lock`):
|
|
@@ -105,7 +121,7 @@ Merge the release PR if all checks are green, then notify Slack.
|
|
|
105
121
|
|
|
106
122
|
2. **Find the open release PR:**
|
|
107
123
|
```bash
|
|
108
|
-
gh pr list --search "[RELEASE]" --state open --base {production_branch} --head {release_branch} --json number,title,url,statusCheckRollup --repo {owner}/{repo}
|
|
124
|
+
gh pr list --search "[RELEASE]" --state open --base {production_branch} --head {release_branch} --json number,title,url,statusCheckRollup,labels --repo {owner}/{repo}
|
|
109
125
|
```
|
|
110
126
|
If no open release PR found, error: "No open release PR found. Run `/release start` first."
|
|
111
127
|
|
|
@@ -115,7 +131,10 @@ Merge the release PR if all checks are green, then notify Slack.
|
|
|
115
131
|
If any checks are pending: "CI checks are still running on PR #{number}. Wait for them to finish."
|
|
116
132
|
If any checks are failing: "CI checks are failing on PR #{number}. Fix them before merging." Show the failing checks.
|
|
117
133
|
|
|
118
|
-
4. **Confirm with user** —
|
|
134
|
+
4. **Confirm with user** — if the release PR's `labels` includes `"high-risk"`, first show an extra AskUserQuestion confirmation:
|
|
135
|
+
"⚠️ This release includes high-risk PRs. Confirm you have coordinated with the contributors and are ready to proceed."
|
|
136
|
+
|
|
137
|
+
Then (regardless of high-risk) show the standard AskUserQuestion:
|
|
119
138
|
"All checks are green on PR #{number}. Merge `{release_branch}` → `{production_branch}`?"
|
|
120
139
|
|
|
121
140
|
5. **Merge the PR:**
|
|
@@ -216,7 +235,7 @@ Check release status across all configured release repos.
|
|
|
216
235
|
|
|
217
236
|
**Open release PRs:**
|
|
218
237
|
```bash
|
|
219
|
-
gh pr list --search "[RELEASE]" --state open --json number,title,url,statusCheckRollup --repo {owner}/{repo}
|
|
238
|
+
gh pr list --search "[RELEASE]" --state open --json number,title,url,statusCheckRollup,labels --repo {owner}/{repo}
|
|
220
239
|
```
|
|
221
240
|
|
|
222
241
|
**Lock state:**
|
|
@@ -232,6 +251,11 @@ Check release status across all configured release repos.
|
|
|
232
251
|
Branch lock: {release_branch} — locked/unlocked
|
|
233
252
|
```
|
|
234
253
|
|
|
254
|
+
If the release PR's `labels` includes `"high-risk"`, append to the repo's status block:
|
|
255
|
+
```
|
|
256
|
+
⚠️ High-risk PRs included
|
|
257
|
+
```
|
|
258
|
+
|
|
235
259
|
If no open release PR: "No active release"
|
|
236
260
|
If no release repos configured: "No release repos configured"
|
|
237
261
|
|
|
@@ -26,6 +26,12 @@ Share content to external platforms. Two modes:
|
|
|
26
26
|
| Confluence | Atlassian MCP (`mcp__claude_ai_Atlassian__*`) | Publish document as page |
|
|
27
27
|
| Slack | `droid integrations slack post` | Process + post message |
|
|
28
28
|
|
|
29
|
+
## Custom Instructions
|
|
30
|
+
|
|
31
|
+
Any command accepts a ` -- {instruction}` suffix. Split on the **first** ` -- ` (space-dash-dash-space): left is the command and its args, right is additional context or instruction to carry through the entire execution. For the Slack flow specifically, the `--` instruction becomes the formatting directive (step S3).
|
|
32
|
+
|
|
33
|
+
Example: `/share slack #eng -- summarise the action items and tag owners`
|
|
34
|
+
|
|
29
35
|
## Procedure
|
|
30
36
|
|
|
31
37
|
### 1. Resolve Platform
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "droid-status-update",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.2",
|
|
4
4
|
"description": "Generate and post project status updates. Aggregates context from codex projects, Jira epics, and manual input. Posts to Slack or prints to terminal.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Orderful",
|
|
@@ -30,6 +30,12 @@ Generate formatted project status updates from multiple sources and post to Slac
|
|
|
30
30
|
|-------------|----------------|----------|
|
|
31
31
|
| **Slack** | If slack.channel configured + SLACK_USER_TOKEN set | Print to terminal |
|
|
32
32
|
|
|
33
|
+
## Custom Instructions
|
|
34
|
+
|
|
35
|
+
Any command accepts a ` -- {instruction}` suffix. Split on the **first** ` -- ` (space-dash-dash-space): left is the command and its args, right is additional context or instruction to carry through the entire execution.
|
|
36
|
+
|
|
37
|
+
Example: `/status-update droid -- emphasise the auth refactor milestone we shipped`
|
|
38
|
+
|
|
33
39
|
## Procedure
|
|
34
40
|
|
|
35
41
|
### 1. Resolve Project Context
|