@orchagent/cli 0.3.78 → 0.3.80
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/commands/init.js +11 -12
- package/dist/commands/publish.js +47 -1
- package/package.json +1 -1
package/dist/commands/init.js
CHANGED
|
@@ -256,7 +256,7 @@ const DISCORD_PACKAGE_JSON = `{
|
|
|
256
256
|
const DISCORD_JS_ENV_EXAMPLE = `# Required — get your bot token from https://discord.com/developers/applications
|
|
257
257
|
DISCORD_BOT_TOKEN=
|
|
258
258
|
|
|
259
|
-
# Required
|
|
259
|
+
# Required — add to workspace secrets: orch secrets set ANTHROPIC_API_KEY <key>
|
|
260
260
|
ANTHROPIC_API_KEY=
|
|
261
261
|
|
|
262
262
|
# Required — comma-separated Discord channel IDs where the bot should respond
|
|
@@ -364,7 +364,7 @@ Edit \`main.py\` to customize:
|
|
|
364
364
|
| Variable | Required | Description |
|
|
365
365
|
|----------|----------|-------------|
|
|
366
366
|
| \`DISCORD_BOT_TOKEN\` | Yes | Discord bot token (workspace secret) |
|
|
367
|
-
| \`ANTHROPIC_API_KEY\` |
|
|
367
|
+
| \`ANTHROPIC_API_KEY\` | Yes | Anthropic API key (workspace secret via \`required_secrets\`) |
|
|
368
368
|
| \`DISCORD_CHANNEL_IDS\` | Yes | Comma-separated channel IDs (workspace secret) |
|
|
369
369
|
| \`MODEL\` | No | Claude model (default: claude-sonnet-4-5-20250929) |
|
|
370
370
|
| \`MAX_TOKENS\` | No | Max response tokens (default: 1024) |
|
|
@@ -422,7 +422,7 @@ Edit \`main.js\` to customize:
|
|
|
422
422
|
| Variable | Required | Description |
|
|
423
423
|
|----------|----------|-------------|
|
|
424
424
|
| \`DISCORD_BOT_TOKEN\` | Yes | Discord bot token (workspace secret) |
|
|
425
|
-
| \`ANTHROPIC_API_KEY\` |
|
|
425
|
+
| \`ANTHROPIC_API_KEY\` | Yes | Anthropic API key (workspace secret via \`required_secrets\`) |
|
|
426
426
|
| \`DISCORD_CHANNEL_IDS\` | Yes | Comma-separated channel IDs (workspace secret) |
|
|
427
427
|
| \`MODEL\` | No | Claude model (default: claude-sonnet-4-5-20250929) |
|
|
428
428
|
| \`MAX_TOKENS\` | No | Max response tokens (default: 1024) |
|
|
@@ -782,7 +782,7 @@ anthropic>=0.40.0,<1.0.0
|
|
|
782
782
|
const DISCORD_ENV_EXAMPLE = `# Required — get your bot token from https://discord.com/developers/applications
|
|
783
783
|
DISCORD_BOT_TOKEN=
|
|
784
784
|
|
|
785
|
-
# Required
|
|
785
|
+
# Required — add to workspace secrets: orch secrets set ANTHROPIC_API_KEY <key>
|
|
786
786
|
ANTHROPIC_API_KEY=
|
|
787
787
|
|
|
788
788
|
# Required — comma-separated Discord channel IDs where the bot should respond
|
|
@@ -942,8 +942,7 @@ function registerInitCommand(program) {
|
|
|
942
942
|
entrypoint: 'main.py',
|
|
943
943
|
supported_providers: ['anthropic'],
|
|
944
944
|
default_models: { anthropic: 'claude-sonnet-4-5-20250929' },
|
|
945
|
-
required_secrets: [],
|
|
946
|
-
optional_secrets: ['DISCORD_BOT_TOKEN', 'DISCORD_CHANNEL_IDS', 'TELEGRAM_BOT_TOKEN', 'SLACK_BOT_TOKEN', 'SLACK_APP_TOKEN'],
|
|
945
|
+
required_secrets: ['ANTHROPIC_API_KEY'],
|
|
947
946
|
tags: ['support', 'discord', 'telegram', 'slack', 'always-on', 'multi-platform'],
|
|
948
947
|
bundle: {
|
|
949
948
|
include: ['*.py', 'connectors/*.py', 'knowledge/*.md', 'requirements.txt'],
|
|
@@ -989,7 +988,7 @@ function registerInitCommand(program) {
|
|
|
989
988
|
process.stdout.write(` ${s + 2}. Copy .env.example to .env and add platform tokens\n`);
|
|
990
989
|
process.stdout.write(` ${s + 3}. Test locally: pip install -r requirements.txt && python main.py\n`);
|
|
991
990
|
process.stdout.write(` ${s + 4}. Deploy: orch publish && orch service deploy\n`);
|
|
992
|
-
process.stdout.write(`\n Skill: orch skill install orchagent/agent-builder — gives your AI the full platform builder reference\n`);
|
|
991
|
+
process.stdout.write(`\n Skill: orch skill install orchagent-public/agent-builder — gives your AI the full platform builder reference\n`);
|
|
993
992
|
return;
|
|
994
993
|
}
|
|
995
994
|
// Handle github-weekly-summary template separately (own file set + output)
|
|
@@ -1045,7 +1044,7 @@ function registerInitCommand(program) {
|
|
|
1045
1044
|
process.stdout.write(` ${s + 3}. orch run <org>/${agentName} Test it\n`);
|
|
1046
1045
|
process.stdout.write(` ${s + 4}. orch schedule create <org>/${agentName} --cron "0 9 * * 1" Schedule weekly\n`);
|
|
1047
1046
|
process.stdout.write(`\n See README.md for full setup guide.\n`);
|
|
1048
|
-
process.stdout.write(`\n Skill: orch skill install orchagent/agent-builder — gives your AI the full platform builder reference\n`);
|
|
1047
|
+
process.stdout.write(`\n Skill: orch skill install orchagent-public/agent-builder — gives your AI the full platform builder reference\n`);
|
|
1049
1048
|
return;
|
|
1050
1049
|
}
|
|
1051
1050
|
// Handle discord-js template separately (JS Discord bot)
|
|
@@ -1069,7 +1068,7 @@ function registerInitCommand(program) {
|
|
|
1069
1068
|
runtime: { command: 'node main.js' },
|
|
1070
1069
|
entrypoint: 'main.js',
|
|
1071
1070
|
supported_providers: ['anthropic'],
|
|
1072
|
-
required_secrets: ['DISCORD_BOT_TOKEN', 'DISCORD_CHANNEL_IDS'],
|
|
1071
|
+
required_secrets: ['ANTHROPIC_API_KEY', 'DISCORD_BOT_TOKEN', 'DISCORD_CHANNEL_IDS'],
|
|
1073
1072
|
tags: ['discord', 'always-on', 'javascript'],
|
|
1074
1073
|
};
|
|
1075
1074
|
await promises_1.default.writeFile(manifestPath, JSON.stringify(manifest, null, 2) + '\n');
|
|
@@ -1095,7 +1094,7 @@ function registerInitCommand(program) {
|
|
|
1095
1094
|
process.stdout.write(` ${stepNum + 2}. Copy .env.example to .env and fill in your tokens\n`);
|
|
1096
1095
|
process.stdout.write(` ${stepNum + 3}. Test locally: npm install && node main.js\n`);
|
|
1097
1096
|
process.stdout.write(` ${stepNum + 4}. Deploy: orch publish\n`);
|
|
1098
|
-
process.stdout.write(`\n Skill: orch skill install orchagent/agent-builder — gives your AI the full platform builder reference\n`);
|
|
1097
|
+
process.stdout.write(`\n Skill: orch skill install orchagent-public/agent-builder — gives your AI the full platform builder reference\n`);
|
|
1099
1098
|
return;
|
|
1100
1099
|
}
|
|
1101
1100
|
const manifestPath = path_1.default.join(targetDir, 'orchagent.json');
|
|
@@ -1147,7 +1146,7 @@ function registerInitCommand(program) {
|
|
|
1147
1146
|
manifest.description = 'An always-on Discord bot powered by Claude';
|
|
1148
1147
|
manifest.runtime = { command: 'python main.py' };
|
|
1149
1148
|
manifest.supported_providers = ['anthropic'];
|
|
1150
|
-
manifest.required_secrets = ['DISCORD_BOT_TOKEN', 'DISCORD_CHANNEL_IDS'];
|
|
1149
|
+
manifest.required_secrets = ['ANTHROPIC_API_KEY', 'DISCORD_BOT_TOKEN', 'DISCORD_CHANNEL_IDS'];
|
|
1151
1150
|
manifest.tags = ['discord', 'always-on'];
|
|
1152
1151
|
}
|
|
1153
1152
|
else if (initMode.flavor === 'code_runtime') {
|
|
@@ -1297,6 +1296,6 @@ function registerInitCommand(program) {
|
|
|
1297
1296
|
process.stdout.write(` ${stepNum + 1}. Edit schema.json with your input/output schemas\n`);
|
|
1298
1297
|
process.stdout.write(` ${stepNum + 2}. Run: orchagent publish\n`);
|
|
1299
1298
|
}
|
|
1300
|
-
process.stdout.write(`\n Skill: orch skill install orchagent/agent-builder — gives your AI the full platform builder reference\n`);
|
|
1299
|
+
process.stdout.write(`\n Skill: orch skill install orchagent-public/agent-builder — gives your AI the full platform builder reference\n`);
|
|
1301
1300
|
});
|
|
1302
1301
|
}
|
package/dist/commands/publish.js
CHANGED
|
@@ -1,4 +1,37 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
2
35
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
36
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
37
|
};
|
|
@@ -380,6 +413,19 @@ function registerPublishCommand(program) {
|
|
|
380
413
|
throw new errors_1.CliError(`Workspace '${configFile.workspace}' not found. Run \`orch workspace list\` to see available workspaces.`);
|
|
381
414
|
}
|
|
382
415
|
workspaceId = ws.id;
|
|
416
|
+
// Warn when publishing to the public showcase workspace
|
|
417
|
+
if (ws.slug === 'orchagent-public' && !options.dryRun) {
|
|
418
|
+
process.stderr.write(chalk_1.default.red.bold('\n PUBLIC WORKSPACE\n') +
|
|
419
|
+
chalk_1.default.red(` Everything published to "${ws.slug}" is publicly visible on orchagent.io/explore.\n\n`));
|
|
420
|
+
const readline = await Promise.resolve().then(() => __importStar(require('readline/promises')));
|
|
421
|
+
const rl = readline.createInterface({ input: process.stdin, output: process.stderr });
|
|
422
|
+
const answer = await rl.question(chalk_1.default.red(' Continue? (y/N): '));
|
|
423
|
+
rl.close();
|
|
424
|
+
if (answer.toLowerCase() !== 'y' && answer.toLowerCase() !== 'yes') {
|
|
425
|
+
process.stderr.write('\nPublish cancelled.\n');
|
|
426
|
+
process.exit(0);
|
|
427
|
+
}
|
|
428
|
+
}
|
|
383
429
|
}
|
|
384
430
|
// Check for SKILL.md first (skills take precedence)
|
|
385
431
|
const skillMdPath = path_1.default.join(cwd, 'SKILL.md');
|
|
@@ -1059,6 +1105,6 @@ function registerPublishCommand(program) {
|
|
|
1059
1105
|
process.stdout.write(`\nNote: Hosted code execution is in beta. Contact support for full deployment.\n`);
|
|
1060
1106
|
}
|
|
1061
1107
|
process.stdout.write(`\nView analytics and usage: https://orchagent.io/dashboard\n`);
|
|
1062
|
-
process.stdout.write(`\nSkill: orch skill install orchagent/agent-builder — gives your AI the full platform builder reference\n`);
|
|
1108
|
+
process.stdout.write(`\nSkill: orch skill install orchagent-public/agent-builder — gives your AI the full platform builder reference\n`);
|
|
1063
1109
|
});
|
|
1064
1110
|
}
|
package/package.json
CHANGED