@the-aico/cli 1.0.0 → 1.0.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/README.md +43 -0
- package/dist/index.js +15 -21
- package/dist/index.js.map +1 -1
- package/package.json +3 -2
package/README.md
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# @the-aico/cli
|
|
2
|
+
|
|
3
|
+
Build your AI team in seconds, start working immediately. aico provides customizable, extensible AI "employees" (skills + commands + docs) that you can use and modify in your own projects.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install -g @the-aico/cli
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Quick Start
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
# Initialize aico in your project
|
|
15
|
+
aico init
|
|
16
|
+
|
|
17
|
+
# Add an AI employee
|
|
18
|
+
aico add pm
|
|
19
|
+
|
|
20
|
+
# List available employees
|
|
21
|
+
aico list
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## Commands
|
|
25
|
+
|
|
26
|
+
| Command | Description |
|
|
27
|
+
|---------|-------------|
|
|
28
|
+
| `aico init` | Initialize aico in your project |
|
|
29
|
+
| `aico add <employee>` | Add an AI employee |
|
|
30
|
+
| `aico remove <employee>` | Remove an AI employee |
|
|
31
|
+
| `aico list` | List available/installed employees |
|
|
32
|
+
| `aico update` | Update installed employees |
|
|
33
|
+
| `aico search <query>` | Search for employees/skills |
|
|
34
|
+
| `aico diff` | Check for updates |
|
|
35
|
+
| `aico check` | Verify installation |
|
|
36
|
+
|
|
37
|
+
## Documentation
|
|
38
|
+
|
|
39
|
+
Visit https://the-aico.com/docs for full documentation.
|
|
40
|
+
|
|
41
|
+
## License
|
|
42
|
+
|
|
43
|
+
[Apache License 2.0](https://github.com/yellinzero/aico/blob/main/LICENSE)
|
package/dist/index.js
CHANGED
|
@@ -16,12 +16,12 @@ var defaultSuggestions = {
|
|
|
16
16
|
REGISTRY_UNAVAILABLE: "The registry server is unavailable. Try again later.",
|
|
17
17
|
// Resource errors
|
|
18
18
|
NOT_FOUND: "The requested resource was not found.",
|
|
19
|
-
SKILL_NOT_FOUND: "Use `
|
|
20
|
-
EMPLOYEE_NOT_FOUND: "Use `
|
|
19
|
+
SKILL_NOT_FOUND: "Use `aico list --skills` to see available skills.",
|
|
20
|
+
EMPLOYEE_NOT_FOUND: "Use `aico list` to see available employees.",
|
|
21
21
|
// Configuration errors
|
|
22
|
-
NOT_INITIALIZED: "Run `
|
|
23
|
-
CONFIG_INVALID: "Check your aico.json for syntax errors or run `
|
|
24
|
-
CONFIG_EXISTS: "Use `
|
|
22
|
+
NOT_INITIALIZED: "Run `aico init` to initialize the project.",
|
|
23
|
+
CONFIG_INVALID: "Check your aico.json for syntax errors or run `aico init --force`.",
|
|
24
|
+
CONFIG_EXISTS: "Use `aico init --force` to overwrite existing config.",
|
|
25
25
|
CONFIG_PARSE_ERROR: "Your aico.json contains invalid JSON. Check for syntax errors.",
|
|
26
26
|
// Dependency errors
|
|
27
27
|
DEPENDENCY_MISSING: "Install the missing dependency first, or use `--no-deps` to skip.",
|
|
@@ -512,10 +512,8 @@ async function runInit(options) {
|
|
|
512
512
|
logger.dim(`Default platform: ${platform}`);
|
|
513
513
|
logger.break();
|
|
514
514
|
logger.info("Next steps:");
|
|
515
|
-
logger.log(` ${logger.highlight("
|
|
516
|
-
logger.log(
|
|
517
|
-
` ${logger.highlight("npx aico list")} View available employees`
|
|
518
|
-
);
|
|
515
|
+
logger.log(` ${logger.highlight("aico add pm")} Add the PM employee`);
|
|
516
|
+
logger.log(` ${logger.highlight("aico list")} View available employees`);
|
|
519
517
|
}
|
|
520
518
|
var init = new Command().name("init").description("Initialize aico in your project").option(
|
|
521
519
|
"-p, --default-platform <platform>",
|
|
@@ -2031,12 +2029,8 @@ var remove = new Command3().name("remove").description("Remove employees or skil
|
|
|
2031
2029
|
"Please specify at least one employee or skill to remove."
|
|
2032
2030
|
);
|
|
2033
2031
|
logger.dim("Examples:");
|
|
2034
|
-
logger.dim(
|
|
2035
|
-
|
|
2036
|
-
);
|
|
2037
|
-
logger.dim(
|
|
2038
|
-
" npx aico remove @the-aico/pm/brainstorming # Remove skill"
|
|
2039
|
-
);
|
|
2032
|
+
logger.dim(" aico remove pm # Remove employee");
|
|
2033
|
+
logger.dim(" aico remove @the-aico/pm/brainstorming # Remove skill");
|
|
2040
2034
|
process.exit(1);
|
|
2041
2035
|
}
|
|
2042
2036
|
const options = removeOptionsSchema.parse({
|
|
@@ -2070,7 +2064,7 @@ async function runList(options) {
|
|
|
2070
2064
|
const employees = Object.entries(config.employees);
|
|
2071
2065
|
if (employees.length === 0) {
|
|
2072
2066
|
logger.info("No employees installed.");
|
|
2073
|
-
logger.dim("Run `
|
|
2067
|
+
logger.dim("Run `aico add <employee>` to add an employee.");
|
|
2074
2068
|
return;
|
|
2075
2069
|
}
|
|
2076
2070
|
logger.bold("Installed employees:");
|
|
@@ -2101,8 +2095,8 @@ async function runList(options) {
|
|
|
2101
2095
|
);
|
|
2102
2096
|
}
|
|
2103
2097
|
logger.break();
|
|
2104
|
-
logger.dim("Use `
|
|
2105
|
-
logger.dim("Use `
|
|
2098
|
+
logger.dim("Use `aico add <employee>` to add an employee.");
|
|
2099
|
+
logger.dim("Use `aico list --installed` to see installed employees.");
|
|
2106
2100
|
} catch {
|
|
2107
2101
|
logger.warn(
|
|
2108
2102
|
"Could not fetch registry. Showing installed employees only."
|
|
@@ -2970,7 +2964,7 @@ function formatJSON(items) {
|
|
|
2970
2964
|
category: item.category,
|
|
2971
2965
|
description: item.description,
|
|
2972
2966
|
tags: item.tags,
|
|
2973
|
-
install: item.type === "employee" ? `
|
|
2967
|
+
install: item.type === "employee" ? `aico add ${item.name}` : `aico add ${item.fullName}`
|
|
2974
2968
|
}))
|
|
2975
2969
|
};
|
|
2976
2970
|
return JSON.stringify(output, null, 2);
|
|
@@ -3016,7 +3010,7 @@ var search = new Command8().name("search").description("Search for skills and em
|
|
|
3016
3010
|
logger.log(formatTable(results));
|
|
3017
3011
|
logger.break();
|
|
3018
3012
|
if (results.length > 0) {
|
|
3019
|
-
logger.dim("Install:
|
|
3013
|
+
logger.dim("Install: aico add <name>");
|
|
3020
3014
|
}
|
|
3021
3015
|
}
|
|
3022
3016
|
} catch (error) {
|
|
@@ -3287,7 +3281,7 @@ var check = new Command9().name("check").description("Check environment and conf
|
|
|
3287
3281
|
const hasWarn = results.some((r) => r.status === "warn");
|
|
3288
3282
|
if (hasError) {
|
|
3289
3283
|
logger.log(
|
|
3290
|
-
kleur5.red("\u2716 Some checks failed. Run `
|
|
3284
|
+
kleur5.red("\u2716 Some checks failed. Run `aico init` to fix.")
|
|
3291
3285
|
);
|
|
3292
3286
|
} else if (hasWarn) {
|
|
3293
3287
|
logger.log(
|