corydora 0.1.0 → 0.2.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/CHANGELOG.md +14 -0
- package/dist/index.js +160 -13
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,20 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to Corydora are documented in this file.
|
|
4
4
|
|
|
5
|
+
## [0.2.0](https://github.com/glorioustephan/corydora/compare/corydora-v0.1.0...corydora-v0.2.0) (2026-03-25)
|
|
6
|
+
|
|
7
|
+
### Features
|
|
8
|
+
|
|
9
|
+
- add initial release package and update README with new logo format ([dd696d1](https://github.com/glorioustephan/corydora/commit/dd696d14b8dd5ee2e29d585ac5b288398e7aaecb))
|
|
10
|
+
- **adding caffeine support on macos:** preventing machine from sleeping when preferred ([7838627](https://github.com/glorioustephan/corydora/commit/7838627225526ecb22af6ec744a3fa8e7e405a3e))
|
|
11
|
+
- **docs and ci:** updating docs infrastructure to work with github actions, adding release-please ([c71da43](https://github.com/glorioustephan/corydora/commit/c71da43b98dcac4f4585e6785492518699018e32))
|
|
12
|
+
- enhance runtime configuration and documentation- Added configurable parameters for request ([7838627](https://github.com/glorioustephan/corydora/commit/7838627225526ecb22af6ec744a3fa8e7e405a3e))
|
|
13
|
+
|
|
14
|
+
### Bug Fixes
|
|
15
|
+
|
|
16
|
+
- **cli:** enhancing --version and --help flags ([2b65e59](https://github.com/glorioustephan/corydora/commit/2b65e59c97f656325e2e6cd5434d6556082161dd))
|
|
17
|
+
- **cli:** enhancing --version and --help flags ([1832127](https://github.com/glorioustephan/corydora/commit/1832127f79a75c2f3efc7cb21f27f3c9148ab3c8))
|
|
18
|
+
|
|
5
19
|
## [0.1.0] - 2026-03-22
|
|
6
20
|
|
|
7
21
|
### Added
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
+
import { readFileSync } from 'node:fs';
|
|
2
3
|
import { Command } from 'commander';
|
|
3
4
|
import { runAgentsImportCommand } from './commands/agents-import.js';
|
|
4
5
|
import { runAgentsListCommand } from './commands/agents-list.js';
|
|
@@ -13,10 +14,69 @@ import { runStopCommand } from './commands/stop.js';
|
|
|
13
14
|
import { selectMainAction } from './ui/menu.js';
|
|
14
15
|
import { createUi } from './ui/output.js';
|
|
15
16
|
const program = new Command();
|
|
17
|
+
const cliVersion = readCliVersion();
|
|
18
|
+
function readCliVersion() {
|
|
19
|
+
const raw = readFileSync(new URL('../package.json', import.meta.url), 'utf8');
|
|
20
|
+
const parsed = JSON.parse(raw);
|
|
21
|
+
return typeof parsed.version === 'string' ? parsed.version : '0.0.0';
|
|
22
|
+
}
|
|
23
|
+
function formatHelpSections(sections) {
|
|
24
|
+
return sections
|
|
25
|
+
.map((section) => `\n${section.title}:\n${section.lines.map((line) => ` ${line}`).join('\n')}\n`)
|
|
26
|
+
.join('');
|
|
27
|
+
}
|
|
28
|
+
function addHelpSections(command, sections) {
|
|
29
|
+
command.addHelpText('after', formatHelpSections(sections));
|
|
30
|
+
}
|
|
31
|
+
function normalizeArgv(argv) {
|
|
32
|
+
const normalized = [...argv];
|
|
33
|
+
for (let index = 2; index < normalized.length; index += 1) {
|
|
34
|
+
if (normalized[index] === '--') {
|
|
35
|
+
break;
|
|
36
|
+
}
|
|
37
|
+
if (normalized[index] === '--v') {
|
|
38
|
+
normalized[index] = '--version';
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
return normalized;
|
|
42
|
+
}
|
|
16
43
|
program
|
|
17
44
|
.name('corydora')
|
|
18
45
|
.description('Provider-neutral overnight AI code scrubbing CLI')
|
|
46
|
+
.usage('[options] [command]')
|
|
47
|
+
.helpOption('-h, --help', 'Display help for command or subcommand')
|
|
48
|
+
.version(cliVersion, '-V, --version', 'Display CLI version')
|
|
49
|
+
.showSuggestionAfterError()
|
|
50
|
+
.showHelpAfterError('(run with --help for usage details)')
|
|
19
51
|
.option('--json', 'Print machine-readable output', false);
|
|
52
|
+
addHelpSections(program, [
|
|
53
|
+
{
|
|
54
|
+
title: 'Arguments',
|
|
55
|
+
lines: [
|
|
56
|
+
'No positional arguments are required at the top level.',
|
|
57
|
+
'Run a subcommand when you want explicit, non-interactive behavior.',
|
|
58
|
+
],
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
title: 'Behavior',
|
|
62
|
+
lines: [
|
|
63
|
+
'Missing `.corydora.json`: runs `corydora init`.',
|
|
64
|
+
'Config present in a TTY: opens the interactive action menu.',
|
|
65
|
+
'Config present without a TTY: runs `corydora status`.',
|
|
66
|
+
],
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
title: 'Examples',
|
|
70
|
+
lines: [
|
|
71
|
+
'$ corydora',
|
|
72
|
+
'$ corydora --version',
|
|
73
|
+
'$ corydora run --dry-run',
|
|
74
|
+
'$ corydora run --background',
|
|
75
|
+
'$ corydora agents import ./agents',
|
|
76
|
+
'$ corydora config validate',
|
|
77
|
+
],
|
|
78
|
+
},
|
|
79
|
+
]);
|
|
20
80
|
program.action(async (_options, command) => {
|
|
21
81
|
const options = command.optsWithGlobals();
|
|
22
82
|
const ui = createUi(options.json);
|
|
@@ -47,8 +107,9 @@ program.action(async (_options, command) => {
|
|
|
47
107
|
}
|
|
48
108
|
await runInitCommand({ projectRoot, json: options.json }, ui);
|
|
49
109
|
});
|
|
50
|
-
program
|
|
110
|
+
const initCommand = program
|
|
51
111
|
.command('init')
|
|
112
|
+
.description('Scaffold Corydora config and project working files')
|
|
52
113
|
.option('--yes', 'Accept defaults without prompting', false)
|
|
53
114
|
.action(async (commandOptions) => {
|
|
54
115
|
const ui = createUi(Boolean(program.opts().json));
|
|
@@ -58,13 +119,20 @@ program
|
|
|
58
119
|
yes: Boolean(commandOptions.yes),
|
|
59
120
|
}, ui);
|
|
60
121
|
});
|
|
61
|
-
|
|
122
|
+
addHelpSections(initCommand, [
|
|
123
|
+
{
|
|
124
|
+
title: 'Examples',
|
|
125
|
+
lines: ['$ corydora init', '$ corydora init --yes', '$ corydora init --yes --json'],
|
|
126
|
+
},
|
|
127
|
+
]);
|
|
128
|
+
const runCommand = program
|
|
62
129
|
.command('run')
|
|
130
|
+
.description('Start a scrub run for the current project')
|
|
63
131
|
.option('--dry-run', 'Run without executing provider actions', false)
|
|
64
132
|
.option('--background', 'Launch in tmux when available', false)
|
|
65
133
|
.option('--foreground', 'Force foreground mode', false)
|
|
66
134
|
.option('--resume', 'Resume the last recorded run state', false)
|
|
67
|
-
.option('--session-name <name>', '
|
|
135
|
+
.option('--session-name <name>', 'Override the generated tmux session name (internal use)')
|
|
68
136
|
.action(async (commandOptions) => {
|
|
69
137
|
const ui = createUi(Boolean(program.opts().json));
|
|
70
138
|
await runRunCommand({
|
|
@@ -77,36 +145,115 @@ program
|
|
|
77
145
|
sessionName: typeof commandOptions.sessionName === 'string' ? commandOptions.sessionName : undefined,
|
|
78
146
|
}, ui);
|
|
79
147
|
});
|
|
80
|
-
|
|
148
|
+
addHelpSections(runCommand, [
|
|
149
|
+
{
|
|
150
|
+
title: 'Examples',
|
|
151
|
+
lines: [
|
|
152
|
+
'$ corydora run',
|
|
153
|
+
'$ corydora run --dry-run',
|
|
154
|
+
'$ corydora run --background',
|
|
155
|
+
'$ corydora run --resume',
|
|
156
|
+
],
|
|
157
|
+
},
|
|
158
|
+
]);
|
|
159
|
+
const statusCommand = program
|
|
160
|
+
.command('status')
|
|
161
|
+
.description('Show the current or most recent run state')
|
|
162
|
+
.action(async () => {
|
|
81
163
|
const ui = createUi(Boolean(program.opts().json));
|
|
82
164
|
await runStatusCommand(resolveProjectRoot(process.cwd()), Boolean(program.opts().json), ui);
|
|
83
165
|
});
|
|
84
|
-
|
|
166
|
+
addHelpSections(statusCommand, [
|
|
167
|
+
{
|
|
168
|
+
title: 'Examples',
|
|
169
|
+
lines: ['$ corydora status', '$ corydora status --json'],
|
|
170
|
+
},
|
|
171
|
+
]);
|
|
172
|
+
const attachCommand = program
|
|
173
|
+
.command('attach')
|
|
174
|
+
.description('Attach to a tmux-backed background run')
|
|
175
|
+
.action(async () => {
|
|
85
176
|
await runAttachCommand(resolveProjectRoot(process.cwd()));
|
|
86
177
|
});
|
|
87
|
-
|
|
178
|
+
addHelpSections(attachCommand, [
|
|
179
|
+
{
|
|
180
|
+
title: 'Examples',
|
|
181
|
+
lines: ['$ corydora attach'],
|
|
182
|
+
},
|
|
183
|
+
]);
|
|
184
|
+
const stopCommand = program
|
|
185
|
+
.command('stop')
|
|
186
|
+
.description('Request a graceful stop for an active run')
|
|
187
|
+
.action(async () => {
|
|
88
188
|
const ui = createUi(Boolean(program.opts().json));
|
|
89
189
|
await runStopCommand(resolveProjectRoot(process.cwd()), Boolean(program.opts().json), ui);
|
|
90
190
|
});
|
|
91
|
-
|
|
191
|
+
addHelpSections(stopCommand, [
|
|
192
|
+
{
|
|
193
|
+
title: 'Examples',
|
|
194
|
+
lines: ['$ corydora stop', '$ corydora stop --json'],
|
|
195
|
+
},
|
|
196
|
+
]);
|
|
197
|
+
const doctorCommand = program
|
|
198
|
+
.command('doctor')
|
|
199
|
+
.description('Check runtime availability and local prerequisites')
|
|
200
|
+
.action(async () => {
|
|
92
201
|
const ui = createUi(Boolean(program.opts().json));
|
|
93
202
|
await runDoctorCommand(resolveProjectRoot(process.cwd()), Boolean(program.opts().json), ui);
|
|
94
203
|
});
|
|
95
|
-
|
|
96
|
-
|
|
204
|
+
addHelpSections(doctorCommand, [
|
|
205
|
+
{
|
|
206
|
+
title: 'Examples',
|
|
207
|
+
lines: ['$ corydora doctor', '$ corydora doctor --json'],
|
|
208
|
+
},
|
|
209
|
+
]);
|
|
210
|
+
const agentsCommand = program
|
|
211
|
+
.command('agents')
|
|
212
|
+
.description('List builtin agents or import agent definitions from disk');
|
|
213
|
+
const agentsListCommand = agentsCommand
|
|
214
|
+
.command('list')
|
|
215
|
+
.description('List builtin and imported agents')
|
|
216
|
+
.action(async () => {
|
|
97
217
|
const ui = createUi(Boolean(program.opts().json));
|
|
98
218
|
await runAgentsListCommand(resolveProjectRoot(process.cwd()), Boolean(program.opts().json), ui);
|
|
99
219
|
});
|
|
100
|
-
|
|
220
|
+
addHelpSections(agentsListCommand, [
|
|
221
|
+
{
|
|
222
|
+
title: 'Examples',
|
|
223
|
+
lines: ['$ corydora agents list', '$ corydora agents list --json'],
|
|
224
|
+
},
|
|
225
|
+
]);
|
|
226
|
+
const agentsImportCommand = agentsCommand
|
|
227
|
+
.command('import')
|
|
228
|
+
.description('Import agent markdown files from a directory')
|
|
229
|
+
.argument('<dir>', 'Directory containing markdown agent definitions')
|
|
230
|
+
.action(async (sourceDirectory) => {
|
|
101
231
|
const ui = createUi(Boolean(program.opts().json));
|
|
102
232
|
await runAgentsImportCommand(resolveProjectRoot(process.cwd()), String(sourceDirectory), Boolean(program.opts().json), ui);
|
|
103
233
|
});
|
|
104
|
-
|
|
105
|
-
|
|
234
|
+
addHelpSections(agentsImportCommand, [
|
|
235
|
+
{
|
|
236
|
+
title: 'Examples',
|
|
237
|
+
lines: ['$ corydora agents import ./agents', '$ corydora agents import ./agents --json'],
|
|
238
|
+
},
|
|
239
|
+
]);
|
|
240
|
+
const configCommand = program
|
|
241
|
+
.command('config')
|
|
242
|
+
.description('Validate Corydora configuration files');
|
|
243
|
+
const configValidateCommand = configCommand
|
|
244
|
+
.command('validate')
|
|
245
|
+
.description('Validate `.corydora.json` against the schema')
|
|
246
|
+
.action(async () => {
|
|
106
247
|
const ui = createUi(Boolean(program.opts().json));
|
|
107
248
|
await runConfigValidateCommand(resolveProjectRoot(process.cwd()), Boolean(program.opts().json), ui);
|
|
108
249
|
});
|
|
109
|
-
|
|
250
|
+
addHelpSections(configValidateCommand, [
|
|
251
|
+
{
|
|
252
|
+
title: 'Examples',
|
|
253
|
+
lines: ['$ corydora config validate', '$ corydora config validate --json'],
|
|
254
|
+
},
|
|
255
|
+
]);
|
|
256
|
+
program.parseAsync(normalizeArgv(process.argv)).catch((error) => {
|
|
110
257
|
const message = error instanceof Error ? error.message : String(error);
|
|
111
258
|
process.stderr.write(`${message}\n`);
|
|
112
259
|
process.exit(1);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|