@x12i/connectix-docs 0.1.0 → 0.1.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/dist/generated/bundle.d.ts.map +1 -1
- package/dist/generated/bundle.js +50 -8
- package/dist/generated/bundle.js.map +1 -1
- package/dist/web/INDEX.md +38 -0
- package/dist/web/SEARCH.json +157 -0
- package/dist/web/agent/INDEX.md +38 -0
- package/dist/web/agent/SEARCH.json +157 -0
- package/dist/web/agent/agent-manifest.json +120 -0
- package/dist/web/agent/indexes/books.json +17 -0
- package/dist/web/agent/indexes/books.md +4 -0
- package/dist/web/agent/indexes/concepts.json +4 -0
- package/dist/web/agent/indexes/concepts.md +3 -0
- package/dist/web/agent/indexes/diagrams.json +4 -0
- package/dist/web/agent/indexes/diagrams.md +3 -0
- package/dist/web/agent/indexes/guides.json +4 -0
- package/dist/web/agent/indexes/guides.md +3 -0
- package/dist/web/agent/indexes/scenarios.json +4 -0
- package/dist/web/agent/indexes/scenarios.md +3 -0
- package/dist/web/agent/indexes/tutorials.json +4 -0
- package/dist/web/agent/indexes/tutorials.md +3 -0
- package/dist/web/agent/indexes/use-cases.json +29 -0
- package/dist/web/agent/indexes/use-cases.md +6 -0
- package/dist/web/agent/use-cases/call-connect-tools.md +78 -0
- package/dist/web/agent/use-cases/catalog-extension-overview.md +42 -0
- package/dist/web/agent/use-cases/orient-connectix.md +95 -0
- package/dist/web/agent/use-cases/run-package-simulator.md +48 -0
- package/dist/web/agent-manifest.json +20 -2
- package/dist/web/agents.html +38 -0
- package/dist/web/app.js +449 -0
- package/dist/web/assets/extras.css +302 -0
- package/dist/web/assets/site.css +21 -0
- package/dist/web/books/00-orient-connectix.html +35 -2
- package/dist/web/books/01-tools-and-simulator.html +35 -2
- package/dist/web/catalog.html +38 -0
- package/dist/web/concepts.html +65 -0
- package/dist/web/diagrams.html +65 -0
- package/dist/web/docs.html +38 -0
- package/dist/web/explore.html +76 -0
- package/dist/web/getting-started.html +38 -0
- package/dist/web/guides.html +65 -0
- package/dist/web/index.html +39 -1
- package/dist/web/indexes/books.json +17 -0
- package/dist/web/indexes/books.md +4 -0
- package/dist/web/indexes/concepts.json +4 -0
- package/dist/web/indexes/concepts.md +3 -0
- package/dist/web/indexes/diagrams.json +4 -0
- package/dist/web/indexes/diagrams.md +3 -0
- package/dist/web/indexes/guides.json +4 -0
- package/dist/web/indexes/guides.md +3 -0
- package/dist/web/indexes/scenarios.json +4 -0
- package/dist/web/indexes/scenarios.md +3 -0
- package/dist/web/indexes/tutorials.json +4 -0
- package/dist/web/indexes/tutorials.md +3 -0
- package/dist/web/indexes/use-cases.json +29 -0
- package/dist/web/indexes/use-cases.md +6 -0
- package/dist/web/knowledge.json +15 -0
- package/dist/web/read.html +161 -74
- package/dist/web/scenarios.html +65 -0
- package/dist/web/search.html +71 -0
- package/dist/web/site.json +1 -1
- package/dist/web/use-cases/call-connect-tools.md +78 -0
- package/dist/web/use-cases/catalog-extension-overview.md +42 -0
- package/dist/web/use-cases/orient-connectix.md +95 -0
- package/dist/web/use-cases/run-package-simulator.md +48 -0
- package/dist/web/use-cases.html +38 -0
- package/dist/web/use-cases.json +28 -4
- package/package.json +7 -7
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 1,
|
|
3
|
+
"product": "Connectix",
|
|
4
|
+
"site": "https://docs.connectix.x12i.com",
|
|
5
|
+
"knowledgePackage": "@x12i/connectix-docs",
|
|
6
|
+
"roles": [
|
|
7
|
+
"developers"
|
|
8
|
+
],
|
|
9
|
+
"books": [
|
|
10
|
+
{
|
|
11
|
+
"id": "00-orient-connectix",
|
|
12
|
+
"audiences": [
|
|
13
|
+
"developers"
|
|
14
|
+
],
|
|
15
|
+
"md": {
|
|
16
|
+
"developers": "downloads/books/00-orient-connectix/developers.md"
|
|
17
|
+
},
|
|
18
|
+
"pdf": {
|
|
19
|
+
"developers": null
|
|
20
|
+
},
|
|
21
|
+
"chapters": {
|
|
22
|
+
"developers": "downloads/books/00-orient-connectix/developers.chapters.json"
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"id": "01-tools-and-simulator",
|
|
27
|
+
"audiences": [
|
|
28
|
+
"developers"
|
|
29
|
+
],
|
|
30
|
+
"md": {
|
|
31
|
+
"developers": "downloads/books/01-tools-and-simulator/developers.md"
|
|
32
|
+
},
|
|
33
|
+
"pdf": {
|
|
34
|
+
"developers": null
|
|
35
|
+
},
|
|
36
|
+
"chapters": {
|
|
37
|
+
"developers": "downloads/books/01-tools-and-simulator/developers.chapters.json"
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
],
|
|
41
|
+
"useCases": [
|
|
42
|
+
{
|
|
43
|
+
"id": "orient-connectix",
|
|
44
|
+
"title": "Orient on Connectix",
|
|
45
|
+
"md": "downloads/use-cases/orient-connectix.md",
|
|
46
|
+
"path": [
|
|
47
|
+
{
|
|
48
|
+
"bookId": "00-orient-connectix",
|
|
49
|
+
"audience": "developers",
|
|
50
|
+
"chapters": [
|
|
51
|
+
"1-what-connectix-is",
|
|
52
|
+
"2-call-styles-and-auth",
|
|
53
|
+
"3-ownership-boundaries"
|
|
54
|
+
]
|
|
55
|
+
}
|
|
56
|
+
]
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
"id": "call-connect-tools",
|
|
60
|
+
"title": "Expose Connectix as AI tools",
|
|
61
|
+
"md": "downloads/use-cases/call-connect-tools.md",
|
|
62
|
+
"path": [
|
|
63
|
+
{
|
|
64
|
+
"bookId": "01-tools-and-simulator",
|
|
65
|
+
"audience": "developers",
|
|
66
|
+
"chapters": [
|
|
67
|
+
"1-the-four-connect-tools",
|
|
68
|
+
"3-stub-and-live-execution"
|
|
69
|
+
]
|
|
70
|
+
}
|
|
71
|
+
]
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"id": "run-package-simulator",
|
|
75
|
+
"title": "Develop against the package simulator",
|
|
76
|
+
"md": "downloads/use-cases/run-package-simulator.md",
|
|
77
|
+
"path": [
|
|
78
|
+
{
|
|
79
|
+
"bookId": "01-tools-and-simulator",
|
|
80
|
+
"audience": "developers",
|
|
81
|
+
"chapters": [
|
|
82
|
+
"2-run-the-package-simulator"
|
|
83
|
+
]
|
|
84
|
+
}
|
|
85
|
+
]
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
"id": "catalog-extension-overview",
|
|
89
|
+
"title": "Understand catalog extension provenance",
|
|
90
|
+
"md": "downloads/use-cases/catalog-extension-overview.md",
|
|
91
|
+
"path": [
|
|
92
|
+
{
|
|
93
|
+
"bookId": "01-tools-and-simulator",
|
|
94
|
+
"audience": "developers",
|
|
95
|
+
"chapters": [
|
|
96
|
+
"4-catalog-extension-overview"
|
|
97
|
+
]
|
|
98
|
+
}
|
|
99
|
+
]
|
|
100
|
+
}
|
|
101
|
+
],
|
|
102
|
+
"indexes": {
|
|
103
|
+
"indexMd": "INDEX.md",
|
|
104
|
+
"searchJson": "SEARCH.json"
|
|
105
|
+
},
|
|
106
|
+
"concepts": [],
|
|
107
|
+
"guides": [],
|
|
108
|
+
"scenarios": [],
|
|
109
|
+
"decisions": [],
|
|
110
|
+
"glossary": [],
|
|
111
|
+
"visuals": [],
|
|
112
|
+
"diagrams": [],
|
|
113
|
+
"relationships": [],
|
|
114
|
+
"tutorials": [],
|
|
115
|
+
"examples": [],
|
|
116
|
+
"sampleData": [],
|
|
117
|
+
"uiClients": [],
|
|
118
|
+
"apis": [],
|
|
119
|
+
"packs": []
|
|
120
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 1,
|
|
3
|
+
"items": [
|
|
4
|
+
{
|
|
5
|
+
"id": "00-orient-connectix",
|
|
6
|
+
"title": "Orient on Connectix",
|
|
7
|
+
"summary": "The Connectix mental model: curated operations, bindings instead of secrets, stub versus live execution, and the Credorix/Memorix ownership boundaries.",
|
|
8
|
+
"path": "books/00-orient-connectix/"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"id": "01-tools-and-simulator",
|
|
12
|
+
"title": "AI Tools and the Package Simulator",
|
|
13
|
+
"summary": "How to expose Connectix as LLM tools with @x12i/connectix-tools, run the @x12i/connectix-simulator package simulator, and understand catalog extension provenance.",
|
|
14
|
+
"path": "books/01-tools-and-simulator/"
|
|
15
|
+
}
|
|
16
|
+
]
|
|
17
|
+
}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
# books
|
|
2
|
+
|
|
3
|
+
- `00-orient-connectix` — Orient on Connectix — The Connectix mental model: curated operations, bindings instead of secrets, stub versus live execution, and the Credorix/Memorix ownership boundaries.
|
|
4
|
+
- `01-tools-and-simulator` — AI Tools and the Package Simulator — How to expose Connectix as LLM tools with @x12i/connectix-tools, run the @x12i/connectix-simulator package simulator, and understand catalog extension provenance.
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 1,
|
|
3
|
+
"items": [
|
|
4
|
+
{
|
|
5
|
+
"id": "orient-connectix",
|
|
6
|
+
"title": "Orient on Connectix",
|
|
7
|
+
"summary": "Understand what Connectix is, the four curated operations, and the caller contract before writing any integration code.",
|
|
8
|
+
"path": "use-cases/orient-connectix.md"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"id": "call-connect-tools",
|
|
12
|
+
"title": "Expose Connectix as AI tools",
|
|
13
|
+
"summary": "Register the four connect tools from @x12i/connectix-tools in an LLM tool registry and run them against a live service or the simulator.",
|
|
14
|
+
"path": "use-cases/call-connect-tools.md"
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"id": "run-package-simulator",
|
|
18
|
+
"title": "Develop against the package simulator",
|
|
19
|
+
"summary": "Use @x12i/connectix-simulator for deterministic local development and tests without the service, Credorix, or providers.",
|
|
20
|
+
"path": "use-cases/run-package-simulator.md"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"id": "catalog-extension-overview",
|
|
24
|
+
"title": "Understand catalog extension provenance",
|
|
25
|
+
"summary": "Know how OpenConnector, n8n-node, and Nango-derived implementations reach the catalog while callers stay source-agnostic.",
|
|
26
|
+
"path": "use-cases/catalog-extension-overview.md"
|
|
27
|
+
}
|
|
28
|
+
]
|
|
29
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
# use-cases
|
|
2
|
+
|
|
3
|
+
- `orient-connectix` — Orient on Connectix — Understand what Connectix is, the four curated operations, and the caller contract before writing any integration code.
|
|
4
|
+
- `call-connect-tools` — Expose Connectix as AI tools — Register the four connect tools from @x12i/connectix-tools in an LLM tool registry and run them against a live service or the simulator.
|
|
5
|
+
- `run-package-simulator` — Develop against the package simulator — Use @x12i/connectix-simulator for deterministic local development and tests without the service, Credorix, or providers.
|
|
6
|
+
- `catalog-extension-overview` — Understand catalog extension provenance — Know how OpenConnector, n8n-node, and Nango-derived implementations reach the catalog while callers stay source-agnostic.
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
# Expose Connectix as AI tools
|
|
2
|
+
|
|
3
|
+
> **Use case id:** `call-connect-tools`
|
|
4
|
+
> **Goal:** Register the four connect tools from @x12i/connectix-tools in an LLM tool registry and run them against a live service or the simulator.
|
|
5
|
+
> **Audiences:** developers
|
|
6
|
+
> **Tags:** ai-tools, agents
|
|
7
|
+
|
|
8
|
+
## Reading path
|
|
9
|
+
|
|
10
|
+
1. **AI Tools and the Package Simulator** (developers) → chapters: `1-the-four-connect-tools`, `3-stub-and-live-execution`
|
|
11
|
+
|
|
12
|
+
## From: AI Tools and the Package Simulator — 1. The four connect tools
|
|
13
|
+
|
|
14
|
+
`@x12i/connectix-tools` publishes the four curated operations as machine-usable tool
|
|
15
|
+
definitions with JSON Schema inputs and outputs:
|
|
16
|
+
|
|
17
|
+
| Tool name | Operation |
|
|
18
|
+
|-----------|-----------|
|
|
19
|
+
| `connect_list_providers` | `connect.listProviders` |
|
|
20
|
+
| `connect_search_actions` | `connect.searchActions` |
|
|
21
|
+
| `connect_get_action` | `connect.getAction` |
|
|
22
|
+
| `connect_execute_action` | `connect.executeAction` |
|
|
23
|
+
|
|
24
|
+
Register the definitions in your LLM tool registry, then route tool calls through a runner:
|
|
25
|
+
|
|
26
|
+
```ts
|
|
27
|
+
import { CONNECT_TOOLS, createHttpConnectToolRunner } from "@x12i/connectix-tools";
|
|
28
|
+
|
|
29
|
+
const runner = createHttpConnectToolRunner({
|
|
30
|
+
baseUrl: "http://127.0.0.1:9400",
|
|
31
|
+
callerId: "service:ai-skills",
|
|
32
|
+
callerToken: process.env.CONNECTIX_AI_SKILLS_TOKEN ?? "change-me-caller",
|
|
33
|
+
});
|
|
34
|
+
|
|
35
|
+
const result = await runner.run({
|
|
36
|
+
tool: "connect_execute_action",
|
|
37
|
+
input: {
|
|
38
|
+
actionId: "example.echo",
|
|
39
|
+
bindingRef: "demo-echo",
|
|
40
|
+
input: { message: "hello" },
|
|
41
|
+
stubEnabled: true,
|
|
42
|
+
},
|
|
43
|
+
});
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
Rules for tool callers:
|
|
47
|
+
|
|
48
|
+
- The recommended flow is discover → describe → execute: search actions, fetch the descriptor,
|
|
49
|
+
read its `inputSchema`, then execute.
|
|
50
|
+
- Pass a `bindingRef`, never a credential. `stubEnabled: true` gives deterministic fixtures.
|
|
51
|
+
- Never add executor-source branches (n8n, Nango, OpenConnector) to caller code. Provenance is
|
|
52
|
+
internal to the service.
|
|
53
|
+
|
|
54
|
+
## From: AI Tools and the Package Simulator — 3. Stub and live execution
|
|
55
|
+
|
|
56
|
+
Both call styles make execution mode explicit:
|
|
57
|
+
|
|
58
|
+
- Pipeline style: `stub: { enabled: true }` → stub; omitted or `false` → live.
|
|
59
|
+
- Canonical style: `execution: { mode: "stub" | "live" }`.
|
|
60
|
+
|
|
61
|
+
Stub execution validates binding policy exactly like live (unknown binding, provider mismatch,
|
|
62
|
+
and disallowed patterns are still rejected), returns the deterministic fixture published with
|
|
63
|
+
the action, and records `mode=stub` in the Memorix execution record. It never leases a
|
|
64
|
+
credential.
|
|
65
|
+
|
|
66
|
+
Live execution resolves the binding's `credentialRef` through Credorix (or the dev credential
|
|
67
|
+
resolver when Credorix env is unset) and runs the registered executor.
|
|
68
|
+
|
|
69
|
+
Development default: stub everywhere — simulator, CI, and Status UI Try. Live is opt-in per
|
|
70
|
+
request and per binding.
|
|
71
|
+
|
|
72
|
+
## Also see
|
|
73
|
+
|
|
74
|
+
- **run-package-simulator** (`run-package-simulator`) —
|
|
75
|
+
|
|
76
|
+
---
|
|
77
|
+
|
|
78
|
+
_Generated use-case pack for agents and humans. See `agent-manifest.json` for discovery._
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# Understand catalog extension provenance
|
|
2
|
+
|
|
3
|
+
> **Use case id:** `catalog-extension-overview`
|
|
4
|
+
> **Goal:** Know how OpenConnector, n8n-node, and Nango-derived implementations reach the catalog while callers stay source-agnostic.
|
|
5
|
+
> **Audiences:** developers
|
|
6
|
+
> **Tags:** catalog, provenance
|
|
7
|
+
|
|
8
|
+
## Reading path
|
|
9
|
+
|
|
10
|
+
1. **AI Tools and the Package Simulator** (developers) → chapters: `4-catalog-extension-overview`
|
|
11
|
+
|
|
12
|
+
## From: AI Tools and the Package Simulator — 4. Catalog extension overview
|
|
13
|
+
|
|
14
|
+
The catalog grows from three sources, all published behind the same caller contract:
|
|
15
|
+
|
|
16
|
+
| Source kind | What it is |
|
|
17
|
+
|-------------|------------|
|
|
18
|
+
| `openconnector` | Curated actions executed by the pinned `vendor/open-connector` engine |
|
|
19
|
+
| `n8n-node` | Selected n8n node resource/operations from an allowlisted, pinned package set |
|
|
20
|
+
| `nango-derived` | Native Connectix/OpenConnector code adapted from offline Nango knowledge |
|
|
21
|
+
| `connectix-native` | First-party executors (for example `example.echo`) |
|
|
22
|
+
|
|
23
|
+
Non-negotiables:
|
|
24
|
+
|
|
25
|
+
- Nango is **offline catalog intelligence only** — never a runtime dependency.
|
|
26
|
+
- Executor selection happens in the executor registry by descriptor; callers never choose a
|
|
27
|
+
backend.
|
|
28
|
+
- Every published action carries provenance (`sourceId`, `sourceVersion`, `fingerprint`,
|
|
29
|
+
license) which flows into Memorix execution records — but never secrets.
|
|
30
|
+
- Offline tooling: `npm run n8n:catalog`, `npm run nango:catalog`, `npm run catalog:gaps`,
|
|
31
|
+
`npm run catalog:review`, `npm run catalog:publish` (writes the reviewed publish list under
|
|
32
|
+
`generated/catalog-candidates/`).
|
|
33
|
+
|
|
34
|
+
Full design: `docs/Connectix-Catalog-Extension-Specification.md` in the Connectix repository.
|
|
35
|
+
|
|
36
|
+
## Also see
|
|
37
|
+
|
|
38
|
+
- **orient-connectix** (`orient-connectix`) —
|
|
39
|
+
|
|
40
|
+
---
|
|
41
|
+
|
|
42
|
+
_Generated use-case pack for agents and humans. See `agent-manifest.json` for discovery._
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
# Orient on Connectix
|
|
2
|
+
|
|
3
|
+
> **Use case id:** `orient-connectix`
|
|
4
|
+
> **Goal:** Understand what Connectix is, the four curated operations, and the caller contract before writing any integration code.
|
|
5
|
+
> **Audiences:** developers
|
|
6
|
+
> **Tags:** orientation, getting-started
|
|
7
|
+
|
|
8
|
+
## Reading path
|
|
9
|
+
|
|
10
|
+
1. **Orient on Connectix** (developers) → chapters: `1-what-connectix-is`, `2-call-styles-and-auth`, `3-ownership-boundaries`
|
|
11
|
+
|
|
12
|
+
## From: Orient on Connectix — 1. What Connectix is
|
|
13
|
+
|
|
14
|
+
Connectix executes **curated provider actions** through one stable contract. Callers never learn
|
|
15
|
+
where an action implementation came from — OpenConnector, an n8n node, Nango-derived native code,
|
|
16
|
+
or Connectix-native code all look identical behind the same envelope.
|
|
17
|
+
|
|
18
|
+
The service exposes exactly four curated operations (never the full upstream provider catalog):
|
|
19
|
+
|
|
20
|
+
| Operation | Purpose |
|
|
21
|
+
|-----------|---------|
|
|
22
|
+
| `connect.listProviders` | List curated providers |
|
|
23
|
+
| `connect.searchActions` | Search curated actions |
|
|
24
|
+
| `connect.getAction` | Fetch one action descriptor |
|
|
25
|
+
| `connect.executeAction` | Run an action (stub or live) |
|
|
26
|
+
|
|
27
|
+
The runtime flow for every execution: validate caller → resolve binding → lease credential →
|
|
28
|
+
run action → observe in Memorix.
|
|
29
|
+
|
|
30
|
+
Key packages:
|
|
31
|
+
|
|
32
|
+
| Package | Role |
|
|
33
|
+
|---------|------|
|
|
34
|
+
| `@x12i/connectix-contracts` | Shared types and envelopes (`ConnectActionRequest`, `PipelineRequest`, error codes) |
|
|
35
|
+
| `@x12i/connectix-client` | Typed HTTP client for the service |
|
|
36
|
+
| `@x12i/connectix-tools` | The four operations as machine-usable LLM tool definitions + runners |
|
|
37
|
+
| `@x12i/connectix-simulator` | Package simulator for local development (no service required) |
|
|
38
|
+
| `@x12i/connectix-docs` | This knowledge package |
|
|
39
|
+
|
|
40
|
+
## From: Orient on Connectix — 2. Call styles and auth
|
|
41
|
+
|
|
42
|
+
Every non-probe route requires two headers:
|
|
43
|
+
|
|
44
|
+
```http
|
|
45
|
+
Authorization: Bearer <caller-token>
|
|
46
|
+
x-connectix-caller-id: service:ai-skills
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
Caller identity always comes from headers. A `callerId` in the request body is overwritten by
|
|
50
|
+
the service. Public routes (no auth): `GET /health`, `GET /ready`, `GET /metadata`.
|
|
51
|
+
|
|
52
|
+
There are two equivalent call styles sharing one runtime:
|
|
53
|
+
|
|
54
|
+
1. **Canonical execute** — `POST /v1/actions/execute` with a full `ConnectActionRequest`
|
|
55
|
+
(contractVersion `"1"`, explicit `execution.mode` of `stub` or `live`).
|
|
56
|
+
2. **Pipeline step** — `POST /pipeline` with `serviceId`, `serviceType` (one of the four
|
|
57
|
+
operations), `input`, and optional `stub.enabled`. Preferred for Memorix Pipeline Services,
|
|
58
|
+
the Status UI Try panel, and AI tools.
|
|
59
|
+
|
|
60
|
+
Discovery routes: `GET /v1/providers`, `GET /v1/actions/search?query=`, and
|
|
61
|
+
`GET /v1/actions/:actionId`. Operation metadata (including example envelopes) is served by
|
|
62
|
+
`GET /metadata` — UIs and tools must load catalogs from there, never hardcode them.
|
|
63
|
+
|
|
64
|
+
Failures use stable error codes such as `ACTION_NOT_FOUND`, `ACTION_NOT_ALLOWED`,
|
|
65
|
+
`CONNECTION_BINDING_NOT_FOUND`, `CREDENTIAL_NOT_AVAILABLE`, and
|
|
66
|
+
`ACTION_IMPLEMENTATION_UNAVAILABLE`.
|
|
67
|
+
|
|
68
|
+
## From: Orient on Connectix — 3. Ownership boundaries
|
|
69
|
+
|
|
70
|
+
Each fact has exactly one owner. Violating these boundaries is the primary review blocker:
|
|
71
|
+
|
|
72
|
+
| Fact | Owner |
|
|
73
|
+
|------|-------|
|
|
74
|
+
| Provider secrets and OAuth refresh | **Credorix** — never stored in Connectix or Memorix |
|
|
75
|
+
| Connection bindings and execution records | **Memorix adapter** (in-memory stub today) |
|
|
76
|
+
| Action implementations and provenance | **Connectix executor registry** |
|
|
77
|
+
| Provider definitions (catalog source) | `vendor/open-connector` (pinned engine) |
|
|
78
|
+
|
|
79
|
+
Callers send a `bindingRef`, never a credential. A binding points at a Credorix
|
|
80
|
+
`credentialRef` plus allowlisted action patterns for one provider. The runtime enforces:
|
|
81
|
+
binding exists and is enabled → binding provider matches the action provider → the action id
|
|
82
|
+
matches the binding's allowed patterns → only then lease a credential (live mode only).
|
|
83
|
+
|
|
84
|
+
Execution mode is always explicit. **Stub** returns the deterministic fixture published with the
|
|
85
|
+
action and records `mode=stub` in Memorix; **live** leases a credential and calls the provider.
|
|
86
|
+
Every published action must ship a schema-valid stub fixture, which is what makes local and CI
|
|
87
|
+
development safe by default.
|
|
88
|
+
|
|
89
|
+
## Also see
|
|
90
|
+
|
|
91
|
+
- **call-connect-tools** (`call-connect-tools`) —
|
|
92
|
+
|
|
93
|
+
---
|
|
94
|
+
|
|
95
|
+
_Generated use-case pack for agents and humans. See `agent-manifest.json` for discovery._
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# Develop against the package simulator
|
|
2
|
+
|
|
3
|
+
> **Use case id:** `run-package-simulator`
|
|
4
|
+
> **Goal:** Use @x12i/connectix-simulator for deterministic local development and tests without the service, Credorix, or providers.
|
|
5
|
+
> **Audiences:** developers
|
|
6
|
+
> **Tags:** simulator, testing
|
|
7
|
+
|
|
8
|
+
## Reading path
|
|
9
|
+
|
|
10
|
+
1. **AI Tools and the Package Simulator** (developers) → chapters: `2-run-the-package-simulator`
|
|
11
|
+
|
|
12
|
+
## From: AI Tools and the Package Simulator — 2. Run the package simulator
|
|
13
|
+
|
|
14
|
+
`@x12i/connectix-simulator` is a package simulator built on `@x12i/api-simulator`. It mirrors
|
|
15
|
+
the Connectix HTTP surface with deterministic fixtures so you can develop tools, callers, and
|
|
16
|
+
tests without the service, Credorix, or providers:
|
|
17
|
+
|
|
18
|
+
```ts
|
|
19
|
+
import { createConnectToolRunner } from "@x12i/connectix-tools";
|
|
20
|
+
import { createSimulatorPipelineCaller, createConnectixSimulator } from "@x12i/connectix-simulator";
|
|
21
|
+
|
|
22
|
+
// In-process pipeline caller for tool runners:
|
|
23
|
+
const runner = createConnectToolRunner(createSimulatorPipelineCaller());
|
|
24
|
+
|
|
25
|
+
// Or raw HTTP-shaped dispatch:
|
|
26
|
+
const { simulator } = createConnectixSimulator();
|
|
27
|
+
await simulator.dispatch({ method: "GET", path: "/metadata" });
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
Simulated fixtures mirror the service foundation: actions `example.echo`,
|
|
31
|
+
`hackernews.get_item`, `hackernews.list_top_stories`, `github.issue.create` and bindings
|
|
32
|
+
`demo-echo`, `demo-hackernews`, `demo-github`.
|
|
33
|
+
|
|
34
|
+
An optional HTTP entry (`startConnectixSimulatorServer`) binds `127.0.0.1:5524` in the
|
|
35
|
+
api-simulator port zone (5520–5539) when a caller needs a real URL. Prefer in-process
|
|
36
|
+
`dispatch()` for tests.
|
|
37
|
+
|
|
38
|
+
The simulator supports **stub mode only**. Live requests return
|
|
39
|
+
`ACTION_IMPLEMENTATION_UNAVAILABLE` — switch `baseUrl` to the real service for live execution.
|
|
40
|
+
Because envelopes are identical, no caller code changes.
|
|
41
|
+
|
|
42
|
+
## Also see
|
|
43
|
+
|
|
44
|
+
- **call-connect-tools** (`call-connect-tools`) —
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
_Generated use-case pack for agents and humans. See `agent-manifest.json` for discovery._
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 1,
|
|
3
3
|
"product": "Connectix",
|
|
4
|
-
"site": "https://docs.x12i.
|
|
4
|
+
"site": "https://docs.connectix.x12i.com",
|
|
5
5
|
"knowledgePackage": "@x12i/connectix-docs",
|
|
6
6
|
"roles": [
|
|
7
7
|
"developers"
|
|
@@ -98,5 +98,23 @@
|
|
|
98
98
|
}
|
|
99
99
|
]
|
|
100
100
|
}
|
|
101
|
-
]
|
|
101
|
+
],
|
|
102
|
+
"indexes": {
|
|
103
|
+
"indexMd": "INDEX.md",
|
|
104
|
+
"searchJson": "SEARCH.json"
|
|
105
|
+
},
|
|
106
|
+
"concepts": [],
|
|
107
|
+
"guides": [],
|
|
108
|
+
"scenarios": [],
|
|
109
|
+
"decisions": [],
|
|
110
|
+
"glossary": [],
|
|
111
|
+
"visuals": [],
|
|
112
|
+
"diagrams": [],
|
|
113
|
+
"relationships": [],
|
|
114
|
+
"tutorials": [],
|
|
115
|
+
"examples": [],
|
|
116
|
+
"sampleData": [],
|
|
117
|
+
"uiClients": [],
|
|
118
|
+
"apis": [],
|
|
119
|
+
"packs": []
|
|
102
120
|
}
|
package/dist/web/agents.html
CHANGED
|
@@ -8,6 +8,40 @@
|
|
|
8
8
|
<link href="https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap" rel="stylesheet">
|
|
9
9
|
<link rel="stylesheet" href="/assets/site.css">
|
|
10
10
|
<link rel="stylesheet" href="/assets/extras.css">
|
|
11
|
+
<script data-docify-guard="docify:serve-guard">
|
|
12
|
+
(function () {
|
|
13
|
+
if (window.location.protocol !== "file:") return;
|
|
14
|
+
var cmd = "npm run docs";
|
|
15
|
+
var dir = "";
|
|
16
|
+
function render() {
|
|
17
|
+
var host = document.createElement("div");
|
|
18
|
+
host.setAttribute("role", "alert");
|
|
19
|
+
host.setAttribute("style", "position:fixed;inset:0;z-index:2147483647;display:flex;align-items:center;justify-content:center;padding:24px;margin:0;background:#0b0e14;color:#e6e9ef;font:16px/1.55 ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif");
|
|
20
|
+
host.innerHTML =
|
|
21
|
+
'<div style="max-width:44rem">' +
|
|
22
|
+
'<p style="margin:0 0 8px;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#8b95a7">Docify</p>' +
|
|
23
|
+
'<h1 style="margin:0 0 12px;font-size:28px;line-height:1.2">Serve this site to view it</h1>' +
|
|
24
|
+
'<p style="margin:0 0 16px;color:#b6bfcf">This page was opened from the file system, so its stylesheets and scripts ' +
|
|
25
|
+
'cannot load and the layout you see is not the real design. Docify sites are served over HTTP.</p>' +
|
|
26
|
+
'<pre style="margin:0 0 16px;padding:14px 16px;border-radius:10px;background:#151a23;border:1px solid #232a36;overflow:auto;font:14px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;color:#e6e9ef"><code>' +
|
|
27
|
+
(dir ? "cd " + dir + "\n" : "") + cmd + '</code></pre>' +
|
|
28
|
+
'<p style="margin:0;color:#8b95a7;font-size:14px">The command builds the bundle, starts the local server, and opens the correct URL.</p>' +
|
|
29
|
+
"</div>";
|
|
30
|
+
document.documentElement.style.background = "#0b0e14";
|
|
31
|
+
if (document.body) {
|
|
32
|
+
document.body.innerHTML = "";
|
|
33
|
+
document.body.appendChild(host);
|
|
34
|
+
} else {
|
|
35
|
+
document.documentElement.appendChild(host);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
if (document.readyState === "loading") {
|
|
39
|
+
document.addEventListener("DOMContentLoaded", render);
|
|
40
|
+
} else {
|
|
41
|
+
render();
|
|
42
|
+
}
|
|
43
|
+
})();
|
|
44
|
+
</script>
|
|
11
45
|
</head>
|
|
12
46
|
<body class="page-agents" style="--accent:#2f6feb;--accent-alt:#1f6e5c" data-page="agents">
|
|
13
47
|
<div class="page-shell">
|
|
@@ -37,9 +71,13 @@
|
|
|
37
71
|
<p class="install-lead">Never add this package to production service dependencies.</p>
|
|
38
72
|
<pre class="install-cmd install-cmd-primary"><code>npm i -D @x12i/connectix-docs</code></pre>
|
|
39
73
|
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
|
|
40
77
|
<p class="install-more"><a href="/agents">Agents / SDK details →</a> · <a href="/agent-manifest.json">agent-manifest.json</a></p>
|
|
41
78
|
</div>
|
|
42
79
|
</section>
|
|
80
|
+
|
|
43
81
|
<section class="section"><div class="note"><div class="note-title">CLI</div><div class="note-body">npx connectix-docs list-use-cases · npx connectix-docs use-case orient-connectix · npx connectix-docs book 00-orient-connectix developers</div></div></section>
|
|
44
82
|
<section class="section prose"><p>The agent manifest (<code>agent-manifest.json</code>) is part of every built bundle and the published knowledge SDK.</p>
|
|
45
83
|
</section>
|