@numa-tech/numa 1.12.10 → 1.13.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/README.md +96 -14
- package/dist/ai-registry/commands.js +33 -33
- package/dist/ai-registry/commands.js.map +1 -1
- package/dist/app-config.d.ts +0 -1
- package/dist/app-config.js +4 -2
- package/dist/app-config.js.map +1 -1
- package/dist/application-onboarding/client.d.ts +83 -8
- package/dist/application-onboarding/client.js +23 -1
- package/dist/application-onboarding/client.js.map +1 -1
- package/dist/application-onboarding/commands.js +66 -4
- package/dist/application-onboarding/commands.js.map +1 -1
- package/dist/application-onboarding/schemas.d.ts +301 -58
- package/dist/application-onboarding/schemas.js +134 -8
- package/dist/application-onboarding/schemas.js.map +1 -1
- package/dist/application-onboarding/tui-model.d.ts +18 -0
- package/dist/application-onboarding/tui-model.js +215 -3
- package/dist/application-onboarding/tui-model.js.map +1 -1
- package/dist/application-onboarding/tui.d.ts +1 -1
- package/dist/application-onboarding/tui.js +20 -6
- package/dist/application-onboarding/tui.js.map +1 -1
- package/dist/authorization/access-request-client.d.ts +45 -0
- package/dist/authorization/access-request-client.js +93 -0
- package/dist/authorization/access-request-client.js.map +1 -0
- package/dist/authorization/access-request-commands.d.ts +25 -0
- package/dist/authorization/access-request-commands.js +196 -0
- package/dist/authorization/access-request-commands.js.map +1 -0
- package/dist/authorization/access-request-schemas.d.ts +123 -0
- package/dist/authorization/access-request-schemas.js +67 -0
- package/dist/authorization/access-request-schemas.js.map +1 -0
- package/dist/authorization/client.d.ts +50 -0
- package/dist/authorization/client.js +113 -0
- package/dist/authorization/client.js.map +1 -0
- package/dist/authorization/commands.d.ts +40 -0
- package/dist/authorization/commands.js +296 -0
- package/dist/authorization/commands.js.map +1 -0
- package/dist/authorization/errors.d.ts +13 -0
- package/dist/authorization/errors.js +70 -0
- package/dist/authorization/errors.js.map +1 -0
- package/dist/authorization/schemas.d.ts +187 -0
- package/dist/authorization/schemas.js +101 -0
- package/dist/authorization/schemas.js.map +1 -0
- package/dist/cli.js +73 -9
- package/dist/cli.js.map +1 -1
- package/dist/clusters/client.d.ts +436 -0
- package/dist/clusters/client.js +207 -0
- package/dist/clusters/client.js.map +1 -0
- package/dist/clusters/commands.d.ts +11 -0
- package/dist/clusters/commands.js +373 -0
- package/dist/clusters/commands.js.map +1 -0
- package/dist/clusters/errors.d.ts +10 -0
- package/dist/clusters/errors.js +61 -0
- package/dist/clusters/errors.js.map +1 -0
- package/dist/clusters/kubeconfig-discovery.d.ts +48 -0
- package/dist/clusters/kubeconfig-discovery.js +280 -0
- package/dist/clusters/kubeconfig-discovery.js.map +1 -0
- package/dist/clusters/schemas.d.ts +510 -0
- package/dist/clusters/schemas.js +201 -0
- package/dist/clusters/schemas.js.map +1 -0
- package/dist/command-catalog.js +490 -26
- package/dist/command-catalog.js.map +1 -1
- package/dist/gitops/client.d.ts +499 -0
- package/dist/gitops/client.js +163 -0
- package/dist/gitops/client.js.map +1 -0
- package/dist/gitops/commands.d.ts +11 -0
- package/dist/gitops/commands.js +367 -0
- package/dist/gitops/commands.js.map +1 -0
- package/dist/gitops/errors.d.ts +10 -0
- package/dist/gitops/errors.js +59 -0
- package/dist/gitops/errors.js.map +1 -0
- package/dist/gitops/schemas.d.ts +1712 -0
- package/dist/gitops/schemas.js +360 -0
- package/dist/gitops/schemas.js.map +1 -0
- package/dist/repositories/client.d.ts +540 -0
- package/dist/repositories/client.js +215 -0
- package/dist/repositories/client.js.map +1 -0
- package/dist/repositories/commands.d.ts +10 -0
- package/dist/repositories/commands.js +347 -0
- package/dist/repositories/commands.js.map +1 -0
- package/dist/repositories/errors.d.ts +10 -0
- package/dist/repositories/errors.js +60 -0
- package/dist/repositories/errors.js.map +1 -0
- package/dist/repositories/schemas.d.ts +1692 -0
- package/dist/repositories/schemas.js +255 -0
- package/dist/repositories/schemas.js.map +1 -0
- package/dist/web-console-page.d.ts +1 -1
- package/dist/web-console-page.js +1 -1
- package/dist/web-console.js +2 -2
- package/dist/web-console.js.map +1 -1
- package/examples/ai-registry/README.md +18 -0
- package/examples/ai-registry/nacos-instance.username-password.example.json +25 -0
- package/package.json +4 -4
- package/skills/numa-ai-registry/SKILL.md +5 -5
- package/skills/numa-ai-registry/evals/evals.json +1 -1
- package/skills/numa-ai-registry/references/command-contract.md +22 -22
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@numa-tech/numa",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.13.0",
|
|
4
4
|
"description": "Cross-platform CLI for the Numa internal developer platform with Keycloak authentication and MCP support.",
|
|
5
5
|
"author": "numa-tech",
|
|
6
6
|
"keywords": [
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
"typecheck": "turbo run typecheck root:typecheck",
|
|
33
33
|
"root:typecheck": "tsc --noEmit",
|
|
34
34
|
"test": "turbo run test root:test",
|
|
35
|
-
"root:test": "node --import tsx --test src/branding.test.ts src/app-config.test.ts src/platform-profile.test.ts src/identity.test.ts src/backend.test.ts src/oauth.test.ts src/web-console.test.ts src/cli-options.test.ts src/ai-registry/client.test.ts src/ai-registry/workspace.test.ts src/ai-registry/namespace.test.ts src/ai-registry/sync.test.ts src/ai-registry/bridge.test.ts src/ai-registry/skill-installer.test.ts src/ai-registry/mcp-installer.test.ts src/media/client.test.ts src/media/commands.test.ts src/media/transfers.test.ts src/pipeline/client.test.ts src/pipeline/commands.test.ts src/application-candidates/client.test.ts src/application-candidates/commands.test.ts src/application-onboarding/client.test.ts src/application-onboarding/commands.test.ts src/application-onboarding/tui.test.ts src/chatgpt-desktop.test.ts src/codex-integration.test.ts scripts/release-all.test.mjs",
|
|
35
|
+
"root:test": "node --import tsx --test src/branding.test.ts src/app-config.test.ts src/platform-profile.test.ts src/identity.test.ts src/backend.test.ts src/oauth.test.ts src/web-console.test.ts src/cli-options.test.ts src/ai-registry/client.test.ts src/ai-registry/workspace.test.ts src/ai-registry/namespace.test.ts src/ai-registry/sync.test.ts src/ai-registry/bridge.test.ts src/ai-registry/skill-installer.test.ts src/ai-registry/mcp-installer.test.ts src/media/client.test.ts src/media/commands.test.ts src/media/transfers.test.ts src/pipeline/client.test.ts src/pipeline/commands.test.ts src/gitops/client.test.ts src/gitops/commands.test.ts src/repositories/client.test.ts src/repositories/commands.test.ts src/clusters/client.test.ts src/clusters/commands.test.ts src/clusters/kubeconfig-discovery.test.ts src/authorization/client.test.ts src/authorization/commands.test.ts src/authorization/access-request-client.test.ts src/authorization/access-request-commands.test.ts src/application-candidates/client.test.ts src/application-candidates/commands.test.ts src/application-onboarding/client.test.ts src/application-onboarding/commands.test.ts src/application-onboarding/tui.test.ts src/chatgpt-desktop.test.ts src/codex-integration.test.ts scripts/release-all.test.mjs",
|
|
36
36
|
"pack:check": "turbo run pack:check root:pack:check",
|
|
37
37
|
"root:pack:check": "node scripts/check-root-package.mjs",
|
|
38
38
|
"boundaries": "node scripts/check-workspace-boundaries.mjs",
|
|
@@ -55,8 +55,8 @@
|
|
|
55
55
|
"dependencies": {
|
|
56
56
|
"@clack/prompts": "^1.7.0",
|
|
57
57
|
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
58
|
-
"@numa-tech/cli-auth": "1.
|
|
59
|
-
"@tokensrc/codex": "1.
|
|
58
|
+
"@numa-tech/cli-auth": "1.13.0",
|
|
59
|
+
"@tokensrc/codex": "1.13.0",
|
|
60
60
|
"commander": "^14.0.3",
|
|
61
61
|
"ink": "^6.8.0",
|
|
62
62
|
"open": "^10.2.0",
|
|
@@ -5,7 +5,7 @@ description: Use Numa to discover, lock, sync, install, review, publish, or trou
|
|
|
5
5
|
|
|
6
6
|
# Numa AI Registry
|
|
7
7
|
|
|
8
|
-
Use `numa registry` as the typed control plane. Never request or pass a Nacos access token: Numa authenticates the user with Keycloak, the platform brokers Nacos access, and MCP clients connect only to the authorized enterprise Router.
|
|
8
|
+
Use `numa registry` as the typed control plane, `numa skills` for Skill resources, and `numa mcp` for MCP resources. Never request or pass a Nacos access token: Numa authenticates the user with Keycloak, the platform brokers Nacos access, and MCP clients connect only to the authorized enterprise Router.
|
|
9
9
|
|
|
10
10
|
## Start safely
|
|
11
11
|
|
|
@@ -19,16 +19,16 @@ Use `numa registry` as the typed control plane. Never request or pass a Nacos ac
|
|
|
19
19
|
|
|
20
20
|
For Skills, list and inspect the exact name. For MCP Servers, inspect the exact version, tools, and transport before installing. Summarize the resolved namespace/instance, resource/version, lifecycle state, Router status, and intended client before a write.
|
|
21
21
|
|
|
22
|
-
Use the command forms in [command-contract.md](references/command-contract.md). Run `numa registry --help` if the installed CLI differs from the reference.
|
|
22
|
+
Use the command forms in [command-contract.md](references/command-contract.md). Run `numa registry --help`, `numa skills --help`, or `numa mcp --help` if the installed CLI differs from the reference.
|
|
23
23
|
|
|
24
24
|
## Lock and install
|
|
25
25
|
|
|
26
26
|
- Prefer a committed `.numa/registry.json`: run `registry init`, edit resource targets, then `registry lock` and `registry sync`. Commit both manifest and lock when repository policy permits.
|
|
27
27
|
- Treat `.numa/registry.lock.json` as authoritative during `sync`. Resolve labels only on first install/`lock` or explicit `upgrade`; never turn `sync` into an implicit upgrade.
|
|
28
28
|
- Verify exact version, Nacos source binding, and SHA-256 before install. Stop on a namespace/instance mismatch or integrity failure.
|
|
29
|
-
- Install Skills with `
|
|
30
|
-
- Install MCP with `
|
|
31
|
-
- Use Remote Streamable HTTP OAuth for ChatGPT and other capable clients. Use `
|
|
29
|
+
- Install Skills with `numa skills install` for one-off additions. Default to project scope; use user scope only for capabilities intentionally shared across workspaces.
|
|
30
|
+
- Install MCP with `numa mcp install`. Require a `READY` namespace Router and a successful health check. Install the Router endpoint, never a direct Nacos/downstream endpoint.
|
|
31
|
+
- Use Remote Streamable HTTP OAuth for ChatGPT and other capable clients. Use `numa mcp bridge` only for stdio clients; it reuses Numa login/refresh and sends the user token only to the Router.
|
|
32
32
|
- Reject literal credentials in Nacos definitions. Sensitive downstream configuration must use secret/environment references and must not enter manifest, lock, logs, or output.
|
|
33
33
|
- Do not use `--force` automatically. Explain the collision, then use it only after the user authorizes replacement. Numa preserves a backup for JSON/Skill replacements where supported.
|
|
34
34
|
- ChatGPT Skill installation targets the ChatGPT/Codex coding workspace. ChatGPT MCP uses the Router's remote HTTPS OAuth resource and guided App setup; it cannot launch the local stdio bridge. Do not claim that Numa edited ChatGPT workspace settings.
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"expectations": [
|
|
29
29
|
"Inspects the MCP definition before installation, checks for literal credentials, and verifies Router health.",
|
|
30
30
|
"Does not expose or install the direct Nacos/downstream endpoint and does not claim ChatGPT settings were changed.",
|
|
31
|
-
"Uses the remote HTTPS OAuth Router for ChatGPT and offers
|
|
31
|
+
"Uses the remote HTTPS OAuth Router for ChatGPT and offers numa mcp bridge for the Claude stdio adapter."
|
|
32
32
|
]
|
|
33
33
|
}
|
|
34
34
|
]
|
|
@@ -36,17 +36,17 @@ Instance JSON configures separate `READER` and `MAINTAINER` credentials (OIDC cl
|
|
|
36
36
|
## Skills
|
|
37
37
|
|
|
38
38
|
```bash
|
|
39
|
-
numa
|
|
40
|
-
numa
|
|
41
|
-
numa
|
|
42
|
-
numa
|
|
43
|
-
numa
|
|
44
|
-
numa
|
|
45
|
-
numa
|
|
46
|
-
numa
|
|
47
|
-
numa
|
|
48
|
-
numa
|
|
49
|
-
numa
|
|
39
|
+
numa skills list --namespace NAMESPACE --search TEXT --json
|
|
40
|
+
numa skills inspect NAME --namespace NAMESPACE --json
|
|
41
|
+
numa skills draft NAME --from-version 1.0.0 --json
|
|
42
|
+
numa skills install NAME --namespace NAMESPACE --agent AGENT --scope project --label latest --json
|
|
43
|
+
numa skills upload ./skill.zip --namespace NAMESPACE --target-version 1.0.0 --json
|
|
44
|
+
numa skills online NAME --namespace NAMESPACE --json
|
|
45
|
+
numa skills offline NAME --namespace NAMESPACE --json
|
|
46
|
+
numa skills scope NAME PRIVATE --namespace NAMESPACE --json
|
|
47
|
+
numa skills tags NAME deploy java --namespace NAMESPACE --json
|
|
48
|
+
numa skills labels NAME latest stable --version 1.2.0 --json
|
|
49
|
+
numa skills delete NAME --namespace NAMESPACE --yes --json
|
|
50
50
|
```
|
|
51
51
|
|
|
52
52
|
Skill agents: `chatgpt`, `codex`, `claude`, `cursor`, `workbuddy`, `openclaw`, `agents`, or `custom`. A custom target also needs `--custom-root`.
|
|
@@ -54,17 +54,17 @@ Skill agents: `chatgpt`, `codex`, `claude`, `cursor`, `workbuddy`, `openclaw`, `
|
|
|
54
54
|
## MCP Servers
|
|
55
55
|
|
|
56
56
|
```bash
|
|
57
|
-
numa
|
|
58
|
-
numa
|
|
59
|
-
numa
|
|
60
|
-
numa
|
|
61
|
-
numa
|
|
62
|
-
numa
|
|
63
|
-
numa
|
|
64
|
-
numa
|
|
65
|
-
numa
|
|
66
|
-
numa
|
|
67
|
-
numa
|
|
57
|
+
numa mcp list --namespace NAMESPACE --search TEXT --json
|
|
58
|
+
numa mcp inspect NAME --namespace NAMESPACE --version 1.0.0 --json
|
|
59
|
+
numa mcp install NAME --namespace NAMESPACE --agent AGENT --scope project --transport remote --json
|
|
60
|
+
numa mcp bridge --namespace NAMESPACE
|
|
61
|
+
numa mcp create ./mcp.json --namespace NAMESPACE --json
|
|
62
|
+
numa mcp update NAME ./mcp.json --namespace NAMESPACE --json
|
|
63
|
+
numa mcp online NAME --version 1.0.0 --json
|
|
64
|
+
numa mcp offline NAME --version 1.0.0 --json
|
|
65
|
+
numa mcp tags NAME internal search --json
|
|
66
|
+
numa mcp tool disable NAME TOOL --version 3 --json
|
|
67
|
+
numa mcp delete NAME --namespace NAMESPACE --version 1.0.0 --yes --json
|
|
68
68
|
```
|
|
69
69
|
|
|
70
70
|
MCP agents: `chatgpt`, `codex`, `claude`, `cursor`, `workbuddy`, `openclaw`, or `custom`. A custom target also needs `--custom-config`. All clients receive the enterprise Router, never the Nacos/downstream endpoint. ChatGPT uses remote HTTPS OAuth; stdio clients may use the bridge. Codex and OpenClaw are user-scoped.
|