@orderful/droid 0.2.0 → 0.4.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.
Files changed (50) hide show
  1. package/.claude/CLAUDE.md +41 -0
  2. package/.github/workflows/changeset-check.yml +43 -0
  3. package/.github/workflows/release.yml +6 -3
  4. package/CHANGELOG.md +43 -0
  5. package/bun.lock +357 -14
  6. package/dist/agents/README.md +137 -0
  7. package/dist/bin/droid.js +12 -1
  8. package/dist/bin/droid.js.map +1 -1
  9. package/dist/commands/setup.d.ts +8 -0
  10. package/dist/commands/setup.d.ts.map +1 -1
  11. package/dist/commands/setup.js +67 -0
  12. package/dist/commands/setup.js.map +1 -1
  13. package/dist/commands/tui.d.ts +2 -0
  14. package/dist/commands/tui.d.ts.map +1 -0
  15. package/dist/commands/tui.js +737 -0
  16. package/dist/commands/tui.js.map +1 -0
  17. package/dist/lib/agents.d.ts +53 -0
  18. package/dist/lib/agents.d.ts.map +1 -0
  19. package/dist/lib/agents.js +149 -0
  20. package/dist/lib/agents.js.map +1 -0
  21. package/dist/lib/skills.d.ts +20 -0
  22. package/dist/lib/skills.d.ts.map +1 -1
  23. package/dist/lib/skills.js +102 -0
  24. package/dist/lib/skills.js.map +1 -1
  25. package/dist/lib/types.d.ts +5 -0
  26. package/dist/lib/types.d.ts.map +1 -1
  27. package/dist/lib/version.d.ts +5 -0
  28. package/dist/lib/version.d.ts.map +1 -1
  29. package/dist/lib/version.js +19 -1
  30. package/dist/lib/version.js.map +1 -1
  31. package/dist/skills/README.md +85 -0
  32. package/dist/skills/comments/SKILL.md +8 -0
  33. package/dist/skills/comments/SKILL.yaml +32 -0
  34. package/dist/skills/comments/commands/README.md +58 -0
  35. package/package.json +15 -2
  36. package/src/agents/README.md +137 -0
  37. package/src/bin/droid.ts +12 -1
  38. package/src/commands/setup.ts +77 -0
  39. package/src/commands/tui.tsx +1535 -0
  40. package/src/lib/agents.ts +186 -0
  41. package/src/lib/skills.test.ts +75 -1
  42. package/src/lib/skills.ts +125 -0
  43. package/src/lib/types.ts +7 -0
  44. package/src/lib/version.test.ts +20 -1
  45. package/src/lib/version.ts +19 -1
  46. package/src/skills/README.md +85 -0
  47. package/src/skills/comments/SKILL.md +8 -0
  48. package/src/skills/comments/SKILL.yaml +32 -0
  49. package/src/skills/comments/commands/README.md +58 -0
  50. package/tsconfig.json +5 -3
@@ -0,0 +1,137 @@
1
+ # Contributing Agents
2
+
3
+ Agents are specialized AI personas with specific expertise or roles. They augment the AI's capabilities for particular tasks.
4
+
5
+ ## Directory Structure
6
+
7
+ Each agent is a directory containing:
8
+
9
+ ```
10
+ agents/
11
+ └── my-agent/
12
+ ├── AGENT.yaml # Required: Manifest with metadata and persona
13
+ └── AGENT.md # Required: Documentation for users
14
+ ```
15
+
16
+ ## AGENT.yaml (Manifest)
17
+
18
+ ```yaml
19
+ name: my-agent # Must match directory name
20
+ description: Short description # Shown in TUI and listings
21
+ version: 1.0.0 # Semver
22
+ status: alpha # alpha | beta | stable (optional)
23
+
24
+ # Agent type (required)
25
+ mode: subagent # primary | subagent | all
26
+
27
+ # Tools this agent can use (optional)
28
+ tools:
29
+ - Read
30
+ - Glob
31
+ - Grep
32
+ - Bash
33
+
34
+ # Suggested triggers - phrases that might invoke this agent
35
+ triggers:
36
+ - "review my code"
37
+ - "check for bugs"
38
+
39
+ # Persona - system prompt additions for this agent (used if AGENT.md is minimal)
40
+ persona: |
41
+ You are a specialized assistant focused on...
42
+
43
+ Your priorities are:
44
+ 1. First priority
45
+ 2. Second priority
46
+
47
+ Always be specific and constructive.
48
+ ```
49
+
50
+ ### Agent Modes
51
+
52
+ - **`primary`** - Main agents you interact with directly. Cycle through them with Tab key.
53
+ - **`subagent`** - Specialized helpers invoked via @mention (e.g., `@code-reviewer check this`) or by primary agents.
54
+ - **`all`** - Agent works as both primary and subagent.
55
+
56
+ ## AGENT.md (Documentation)
57
+
58
+ The AGENT.md file documents the agent for users:
59
+
60
+ ```markdown
61
+ ---
62
+ name: my-agent
63
+ description: Short description (must match AGENT.yaml)
64
+ ---
65
+
66
+ # My Agent
67
+
68
+ Description of what this agent does and when to use it.
69
+
70
+ ## What It Does
71
+
72
+ - Bullet points of capabilities
73
+ - What it focuses on
74
+ - What it ignores
75
+
76
+ ## Usage
77
+
78
+ Examples of how to invoke or use this agent.
79
+
80
+ ## Output Format
81
+
82
+ Description of how the agent formats its responses.
83
+ ```
84
+
85
+ ## Example Agent
86
+
87
+ See `code-reviewer/` for a complete example:
88
+
89
+ - Reviews code for bugs, security issues, style
90
+ - Categorizes issues by severity (critical/warning/suggestion)
91
+ - References specific file and line numbers
92
+
93
+ ## Ideas for Agents
94
+
95
+ - **test-writer** - Generates unit tests for code
96
+ - **doc-writer** - Writes documentation and comments
97
+ - **refactorer** - Suggests and applies refactoring patterns
98
+ - **security-auditor** - Deep security analysis
99
+ - **performance-optimizer** - Identifies performance bottlenecks
100
+
101
+ ## Installation
102
+
103
+ When you install an agent via the TUI, droid:
104
+
105
+ 1. Reads `AGENT.yaml` for metadata (name, description, tools)
106
+ 2. Reads `AGENT.md` for the agent's instructions/persona
107
+ 3. Combines them into a single `.md` file with frontmatter
108
+ 4. Writes to `~/.claude/agents/{name}.md`
109
+
110
+ The installed format matches what Claude Code expects:
111
+
112
+ ```markdown
113
+ ---
114
+ name: my-agent
115
+ description: Short description
116
+ tools: Read, Glob, Grep, Bash
117
+ ---
118
+
119
+ [Content from AGENT.md]
120
+ ```
121
+
122
+ ## Testing Your Agent
123
+
124
+ 1. Run `npm run build` to compile
125
+ 2. Run `droid` to open the TUI
126
+ 3. Navigate to Agents tab
127
+ 4. Verify your agent appears with correct metadata
128
+ 5. Install and verify it appears in `~/.claude/agents/`
129
+
130
+ ## Checklist
131
+
132
+ - [ ] `AGENT.yaml` has all required fields (name, description, version, mode)
133
+ - [ ] `AGENT.md` contains the agent's instructions/persona
134
+ - [ ] Name matches directory name
135
+ - [ ] Description is clear and concise
136
+ - [ ] Mode is appropriate (subagent for specialized tasks, primary for main assistants)
137
+ - [ ] Tools list only includes what the agent needs
package/dist/bin/droid.js CHANGED
@@ -6,6 +6,7 @@ import { skillsCommand } from '../commands/skills.js';
6
6
  import { installCommand } from '../commands/install.js';
7
7
  import { uninstallCommand } from '../commands/uninstall.js';
8
8
  import { updateCommand } from '../commands/update.js';
9
+ import { tuiCommand } from '../commands/tui.js';
9
10
  import { getVersion, checkForUpdates } from '../lib/version.js';
10
11
  const version = getVersion();
11
12
  program
@@ -42,7 +43,17 @@ program
42
43
  .option('--cli', 'Only update the CLI')
43
44
  .argument('[skill]', 'Update a specific skill')
44
45
  .action(updateCommand);
46
+ program
47
+ .command('tui')
48
+ .description('Launch interactive TUI dashboard')
49
+ .action(tuiCommand);
45
50
  // Check for updates on any command (non-blocking)
46
51
  checkForUpdates().catch(() => { });
47
- program.parse();
52
+ // If no command provided, launch TUI
53
+ if (process.argv.length === 2) {
54
+ tuiCommand();
55
+ }
56
+ else {
57
+ program.parse();
58
+ }
48
59
  //# sourceMappingURL=droid.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"droid.js","sourceRoot":"","sources":["../../src/bin/droid.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEhE,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;AAE7B,OAAO;KACJ,IAAI,CAAC,OAAO,CAAC;KACb,WAAW,CAAC,sDAAsD,CAAC;KACnE,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,6CAA6C,CAAC;KAC1D,MAAM,CAAC,YAAY,CAAC,CAAC;AAExB,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,4BAA4B,CAAC;KACzC,MAAM,CAAC,YAAY,EAAE,uBAAuB,CAAC;KAC7C,MAAM,CAAC,iBAAiB,EAAE,6BAA6B,CAAC;KACxD,MAAM,CAAC,uBAAuB,EAAE,oBAAoB,CAAC;KACrD,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,oCAAoC,CAAC;KACjD,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,OAAO;KACJ,OAAO,CAAC,iBAAiB,CAAC;KAC1B,WAAW,CAAC,0CAA0C,CAAC;KACvD,MAAM,CAAC,cAAc,CAAC,CAAC;AAE1B,OAAO;KACJ,OAAO,CAAC,mBAAmB,CAAC;KAC5B,WAAW,CAAC,mBAAmB,CAAC;KAChC,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAE5B,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,mCAAmC,CAAC;KAChD,MAAM,CAAC,UAAU,EAAE,oBAAoB,CAAC;KACxC,MAAM,CAAC,OAAO,EAAE,qBAAqB,CAAC;KACtC,QAAQ,CAAC,SAAS,EAAE,yBAAyB,CAAC;KAC9C,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,kDAAkD;AAClD,eAAe,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;AAElC,OAAO,CAAC,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"droid.js","sourceRoot":"","sources":["../../src/bin/droid.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEhE,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;AAE7B,OAAO;KACJ,IAAI,CAAC,OAAO,CAAC;KACb,WAAW,CAAC,sDAAsD,CAAC;KACnE,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,6CAA6C,CAAC;KAC1D,MAAM,CAAC,YAAY,CAAC,CAAC;AAExB,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,4BAA4B,CAAC;KACzC,MAAM,CAAC,YAAY,EAAE,uBAAuB,CAAC;KAC7C,MAAM,CAAC,iBAAiB,EAAE,6BAA6B,CAAC;KACxD,MAAM,CAAC,uBAAuB,EAAE,oBAAoB,CAAC;KACrD,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,oCAAoC,CAAC;KACjD,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,OAAO;KACJ,OAAO,CAAC,iBAAiB,CAAC;KAC1B,WAAW,CAAC,0CAA0C,CAAC;KACvD,MAAM,CAAC,cAAc,CAAC,CAAC;AAE1B,OAAO;KACJ,OAAO,CAAC,mBAAmB,CAAC;KAC5B,WAAW,CAAC,mBAAmB,CAAC;KAChC,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAE5B,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,mCAAmC,CAAC;KAChD,MAAM,CAAC,UAAU,EAAE,oBAAoB,CAAC;KACxC,MAAM,CAAC,OAAO,EAAE,qBAAqB,CAAC;KACtC,QAAQ,CAAC,SAAS,EAAE,yBAAyB,CAAC;KAC9C,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,OAAO;KACJ,OAAO,CAAC,KAAK,CAAC;KACd,WAAW,CAAC,kCAAkC,CAAC;KAC/C,MAAM,CAAC,UAAU,CAAC,CAAC;AAEtB,kDAAkD;AAClD,eAAe,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;AAElC,qCAAqC;AACrC,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;IAC9B,UAAU,EAAE,CAAC;AACf,CAAC;KAAM,CAAC;IACN,OAAO,CAAC,KAAK,EAAE,CAAC;AAClB,CAAC"}
@@ -1,2 +1,10 @@
1
+ import { AITool } from '../lib/types.js';
2
+ /**
3
+ * Configure AI tool permissions for droid
4
+ */
5
+ export declare function configureAIToolPermissions(aiTool: AITool): {
6
+ added: string[];
7
+ alreadyPresent: boolean;
8
+ };
1
9
  export declare function setupCommand(): Promise<void>;
2
10
  //# sourceMappingURL=setup.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"AA8DA,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAsFlD"}
1
+ {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,MAAM,EAA0D,MAAM,iBAAiB,CAAC;AA6CjG;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,cAAc,EAAE,OAAO,CAAA;CAAE,CAiDvG;AAyBD,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CA+FlD"}
@@ -1,9 +1,22 @@
1
1
  import inquirer from 'inquirer';
2
2
  import chalk from 'chalk';
3
3
  import { execSync } from 'child_process';
4
+ import { existsSync, readFileSync, writeFileSync, mkdirSync } from 'fs';
5
+ import { join } from 'path';
6
+ import { homedir } from 'os';
4
7
  import { loadConfig, saveConfig, configExists } from '../lib/config.js';
5
8
  import { getBundledSkills } from '../lib/skills.js';
6
9
  import { AITool, BuiltInOutput } from '../lib/types.js';
10
+ /**
11
+ * Permissions droid needs to operate without constant prompts
12
+ */
13
+ const DROID_PERMISSIONS = [
14
+ 'Read(~/.droid/**)',
15
+ 'Write(~/.droid/**)',
16
+ 'Edit(~/.droid/**)',
17
+ 'Glob(~/.droid/**)',
18
+ 'Grep(~/.droid/**)',
19
+ ];
7
20
  /**
8
21
  * Detect which AI tool is installed
9
22
  */
@@ -35,6 +48,52 @@ function detectGitUsername() {
35
48
  return '';
36
49
  }
37
50
  }
51
+ /**
52
+ * Configure AI tool permissions for droid
53
+ */
54
+ export function configureAIToolPermissions(aiTool) {
55
+ const added = [];
56
+ if (aiTool === AITool.ClaudeCode) {
57
+ const settingsPath = join(homedir(), '.claude', 'settings.json');
58
+ // Ensure .claude directory exists
59
+ const claudeDir = join(homedir(), '.claude');
60
+ if (!existsSync(claudeDir)) {
61
+ mkdirSync(claudeDir, { recursive: true });
62
+ }
63
+ // Load or create settings
64
+ let settings = {};
65
+ if (existsSync(settingsPath)) {
66
+ try {
67
+ settings = JSON.parse(readFileSync(settingsPath, 'utf-8'));
68
+ }
69
+ catch {
70
+ // Invalid JSON, start fresh
71
+ settings = {};
72
+ }
73
+ }
74
+ // Ensure permissions structure exists
75
+ if (!settings.permissions) {
76
+ settings.permissions = {};
77
+ }
78
+ if (!Array.isArray(settings.permissions.allow)) {
79
+ settings.permissions.allow = [];
80
+ }
81
+ // Add missing permissions
82
+ for (const perm of DROID_PERMISSIONS) {
83
+ if (!settings.permissions.allow.includes(perm)) {
84
+ settings.permissions.allow.push(perm);
85
+ added.push(perm);
86
+ }
87
+ }
88
+ // Save if we added anything
89
+ if (added.length > 0) {
90
+ writeFileSync(settingsPath, JSON.stringify(settings, null, 2) + '\n', 'utf-8');
91
+ }
92
+ return { added, alreadyPresent: added.length === 0 };
93
+ }
94
+ // OpenCode - TODO: implement when we know the settings path
95
+ return { added: [], alreadyPresent: true };
96
+ }
38
97
  /**
39
98
  * Get available output options (built-in + skills that provide output)
40
99
  */
@@ -127,6 +186,14 @@ export async function setupCommand() {
127
186
  };
128
187
  saveConfig(config);
129
188
  console.log(chalk.green('\n✓ Config saved to ~/.droid/config.yaml'));
189
+ // Configure AI tool permissions
190
+ const { added, alreadyPresent } = configureAIToolPermissions(answers.ai_tool);
191
+ if (added.length > 0) {
192
+ console.log(chalk.green(`✓ Added droid permissions to ${answers.ai_tool} settings`));
193
+ }
194
+ else if (alreadyPresent) {
195
+ console.log(chalk.gray(` Droid permissions already configured in ${answers.ai_tool}`));
196
+ }
130
197
  console.log(chalk.gray('\nRun `droid skills` to browse and install skills.'));
131
198
  }
132
199
  //# sourceMappingURL=setup.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function tuiCommand(): Promise<void>;
2
+ //# sourceMappingURL=tui.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tui.d.ts","sourceRoot":"","sources":["../../src/commands/tui.tsx"],"names":[],"mappings":"AAm/CA,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAWhD"}