atris 3.25.0 → 3.25.2
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/README.md +1 -1
- package/ax +11 -9
- package/bin/atris.js +1 -1
- package/commands/align.js +22 -9
- package/commands/skill.js +13 -9
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -87,7 +87,7 @@ Integrates with any agent.
|
|
|
87
87
|
|
|
88
88
|
## Chat With Atris 2
|
|
89
89
|
|
|
90
|
-
`ax` is the Atris 2 chat and coding-agent CLI. It uses the hosted Atris cloud by default, streams text, shows tool activity, and keeps fresh installs away from
|
|
90
|
+
`ax` is the Atris 2 chat and coding-agent CLI. It uses the hosted Atris cloud by default, streams text, shows tool activity, and keeps fresh installs away from local setup.
|
|
91
91
|
|
|
92
92
|
```bash
|
|
93
93
|
cd your-project
|
package/ax
CHANGED
|
@@ -349,7 +349,7 @@ function buildRunProfile(options = {}) {
|
|
|
349
349
|
workspace_path: isCodeFastLocal(options) ? cwd : 'cloud scratch',
|
|
350
350
|
max_turns: 1,
|
|
351
351
|
streaming: false,
|
|
352
|
-
runtime: isCodeFastLocal(options) ? 'local Cursor SDK
|
|
352
|
+
runtime: isCodeFastLocal(options) ? 'local Cursor SDK bridge' : 'authenticated Code Fast cloud scratch',
|
|
353
353
|
reasoning: 'Composer 2.5 fast lane; charges 10 credits per public turn'
|
|
354
354
|
};
|
|
355
355
|
}
|
|
@@ -368,10 +368,10 @@ function buildRunProfile(options = {}) {
|
|
|
368
368
|
streaming: true,
|
|
369
369
|
runtime: route === 'cloud' ? 'authenticated cloud connectors/chat' : 'local workspace',
|
|
370
370
|
reasoning: mode === 'max'
|
|
371
|
-
? '
|
|
371
|
+
? 'Atris cloud service; Max workspace tool loop uses high reasoning effort'
|
|
372
372
|
: mode === 'pro'
|
|
373
|
-
? '
|
|
374
|
-
: '
|
|
373
|
+
? 'Atris cloud service; Pro workspace tool loop uses API default medium'
|
|
374
|
+
: 'Atris cloud service; Fast workspace tool loop uses provider default'
|
|
375
375
|
};
|
|
376
376
|
}
|
|
377
377
|
|
|
@@ -2872,16 +2872,18 @@ function formatChatDogfoodStatusReport(status) {
|
|
|
2872
2872
|
return lines.join('\n');
|
|
2873
2873
|
}
|
|
2874
2874
|
|
|
2875
|
-
function printBackendHint() {
|
|
2875
|
+
function printBackendHint(options = {}) {
|
|
2876
2876
|
console.log('');
|
|
2877
2877
|
console.log('Hosted lane:');
|
|
2878
2878
|
console.log('ax --cloud "hello"');
|
|
2879
2879
|
console.log('');
|
|
2880
2880
|
console.log('Cloud API:');
|
|
2881
2881
|
console.log(`ATRIS_API_BASE=${BACKEND.publicBase}`);
|
|
2882
|
-
|
|
2883
|
-
|
|
2884
|
-
|
|
2882
|
+
if (options.route === 'local' || options.forceLocal) {
|
|
2883
|
+
console.log('');
|
|
2884
|
+
console.log('Local developer lane:');
|
|
2885
|
+
console.log(`Set AX_BACKEND_URL=http://${BACKEND.host}:${BACKEND.port} after starting your local Atris2 service.`);
|
|
2886
|
+
}
|
|
2885
2887
|
}
|
|
2886
2888
|
|
|
2887
2889
|
function bufferedOutput() {
|
|
@@ -3243,7 +3245,7 @@ async function main() {
|
|
|
3243
3245
|
console.log(formatDoneLine(result.durationMs, creditsFromState(result)));
|
|
3244
3246
|
} catch (error) {
|
|
3245
3247
|
console.error(`x ${error.message}`);
|
|
3246
|
-
printBackendHint();
|
|
3248
|
+
printBackendHint(runOptions);
|
|
3247
3249
|
process.exit(1);
|
|
3248
3250
|
}
|
|
3249
3251
|
}
|
package/bin/atris.js
CHANGED
|
@@ -1455,7 +1455,7 @@ if (command === 'init') {
|
|
|
1455
1455
|
console.error(`✗ Chat failed: ${error.message || error}`);
|
|
1456
1456
|
process.exit(1);
|
|
1457
1457
|
});
|
|
1458
|
-
} else if (command === 'fast' ||
|
|
1458
|
+
} else if (command === 'fast' || command === 'ax') {
|
|
1459
1459
|
atrisFastChat()
|
|
1460
1460
|
.then(() => process.exit(0))
|
|
1461
1461
|
.catch((error) => {
|
package/commands/align.js
CHANGED
|
@@ -466,6 +466,26 @@ async function alignHardLocalToCloud(token, biz, localDir) {
|
|
|
466
466
|
|
|
467
467
|
async function alignAtris() {
|
|
468
468
|
// Parse args
|
|
469
|
+
const printUsage = () => {
|
|
470
|
+
console.log('Usage: atris align [business] [--fix] [--hard] [--from cloud|local] [--dry-run]');
|
|
471
|
+
console.log('');
|
|
472
|
+
console.log(' atris align Diff current workspace against cloud (auto-detect)');
|
|
473
|
+
console.log(' atris align example-co Diff example-co workspace');
|
|
474
|
+
console.log(' atris align example-co --fix Fix drift (local is canonical by default)');
|
|
475
|
+
console.log(' atris align example-co --fix --hard Force-push: nuke cloud cruft, upload local. Skips diff. Fast.');
|
|
476
|
+
console.log(' atris align example-co --fix --from cloud Cloud is canonical: pull EC2-only, delete local extras');
|
|
477
|
+
console.log(' atris align example-co --dry-run Show what would change, do nothing');
|
|
478
|
+
};
|
|
479
|
+
|
|
480
|
+
// Explicit help must win before we try to auto-detect a business slug,
|
|
481
|
+
// otherwise `--help` gets overwritten by the .atris/business.json fallback
|
|
482
|
+
// and the command attempts a real align instead of printing usage.
|
|
483
|
+
const firstArg = process.argv[3];
|
|
484
|
+
if (firstArg === '--help' || firstArg === '-h' || firstArg === 'help') {
|
|
485
|
+
printUsage();
|
|
486
|
+
process.exit(0);
|
|
487
|
+
}
|
|
488
|
+
|
|
469
489
|
let slug = process.argv[3];
|
|
470
490
|
if (!slug || slug.startsWith('-')) {
|
|
471
491
|
const bizFile = path.join(process.cwd(), '.atris', 'business.json');
|
|
@@ -475,15 +495,8 @@ async function alignAtris() {
|
|
|
475
495
|
if (!slug || slug.startsWith('-')) slug = null;
|
|
476
496
|
}
|
|
477
497
|
|
|
478
|
-
if (!slug
|
|
479
|
-
|
|
480
|
-
console.log('');
|
|
481
|
-
console.log(' atris align Diff current workspace against cloud (auto-detect)');
|
|
482
|
-
console.log(' atris align example-co Diff example-co workspace');
|
|
483
|
-
console.log(' atris align example-co --fix Fix drift (local is canonical by default)');
|
|
484
|
-
console.log(' atris align example-co --fix --hard Force-push: nuke cloud cruft, upload local. Skips diff. Fast.');
|
|
485
|
-
console.log(' atris align example-co --fix --from cloud Cloud is canonical: pull EC2-only, delete local extras');
|
|
486
|
-
console.log(' atris align example-co --dry-run Show what would change, do nothing');
|
|
498
|
+
if (!slug) {
|
|
499
|
+
printUsage();
|
|
487
500
|
process.exit(0);
|
|
488
501
|
}
|
|
489
502
|
|
package/commands/skill.js
CHANGED
|
@@ -622,15 +622,19 @@ curl -s "https://api.atris.ai/api/integrations/YOUR_INTEGRATION/items" \\
|
|
|
622
622
|
// --- CREATE subcommand ---
|
|
623
623
|
|
|
624
624
|
function skillCreate(nameArg, ...flags) {
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
console.
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
625
|
+
// A flag-shaped first arg is not a skill name (e.g. `skill create --help`);
|
|
626
|
+
// show usage instead of creating a junk folder named "--help".
|
|
627
|
+
const wantsHelp = nameArg === '--help' || nameArg === '-h' || nameArg === 'help';
|
|
628
|
+
if (!nameArg || nameArg.startsWith('-')) {
|
|
629
|
+
const out = wantsHelp ? console.log : console.error;
|
|
630
|
+
out('Usage: atris skill create <name> [--integration] [--description="..."] [--local]');
|
|
631
|
+
out('');
|
|
632
|
+
out('Examples:');
|
|
633
|
+
out(' atris skill create daily-standup');
|
|
634
|
+
out(' atris skill create email-outreach --integration');
|
|
635
|
+
out(' atris skill create example-co/bol-processor --integration');
|
|
636
|
+
out(' atris skill create my-skill --local # project only, skip system dirs');
|
|
637
|
+
process.exit(wantsHelp ? 0 : 1);
|
|
634
638
|
}
|
|
635
639
|
|
|
636
640
|
const isIntegration = flags.includes('--integration');
|