@xanots/sdk 0.0.2 → 0.0.3
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 +11 -2
- package/dist/.build-fingerprint +1 -1
- package/dist/{agent-file-refresh-7XCACU34.js → agent-file-refresh-6M5M7T24.js} +4 -3
- package/dist/bin.js +7 -7
- package/dist/{chunk-MUDLJG2O.js → chunk-2V4YE6QC.js} +25 -15
- package/dist/{chunk-UVLVQWWF.js → chunk-3NFUWXOC.js} +70 -20
- package/dist/chunk-6DHJVLYP.js +2044 -0
- package/dist/{chunk-IZW6MK3U.js → chunk-6USV65XA.js} +2 -2
- package/dist/{chunk-XLD4BUTF.js → chunk-BT2CSEC5.js} +2 -2
- package/dist/{chunk-VKFQJEMW.js → chunk-CMZLPTGW.js} +37 -406
- package/dist/{chunk-YYRDLFSJ.js → chunk-DYCLVQXW.js} +50 -3
- package/dist/chunk-HQ2CBRVI.js +530 -0
- package/dist/{chunk-ZPEY5WE4.js → chunk-W2G2WPTB.js} +3 -3
- package/dist/chunk-WUSKBXXD.js +25 -0
- package/dist/{chunk-ODNMVJ6H.js → chunk-YZ4GU6F5.js} +283 -252
- package/dist/{chunk-5YTBTF25.js → chunk-ZO3HJOCJ.js} +2 -2
- package/dist/cli.d.ts +31 -0
- package/dist/cli.js +5 -5
- package/dist/{codegen-command-RY2GWDLX.js → codegen-command-FIADGXRN.js} +13 -11
- package/dist/{completion-TIPPZN7H.js → completion-BKAFCZBE.js} +2 -2
- package/dist/{deploy-command-DSISLUW5.js → deploy-command-4R6BYC6G.js} +13 -13
- package/dist/{env-target-7C2GKBCY.js → env-target-XWS2ZZ2Y.js} +2 -2
- package/dist/{ephemeral-command-5K573ZSG.js → ephemeral-command-JL4TPIRQ.js} +15 -15
- package/dist/{init-command-4AWL6CLW.js → init-command-LOK75W64.js} +11 -9
- package/dist/internal.js +4 -3
- package/dist/{lock-commands-7Q5LNZKL.js → lock-commands-XOYS75YQ.js} +9 -9
- package/dist/{marketplace-command-RATXTKXN.js → marketplace-command-UVV3XAOL.js} +6 -6
- package/dist/meta-client-OW5WKWW7.js +1 -1
- package/dist/node.js +8 -8
- package/dist/{release-command-QXLRJMY7.js → release-command-HZUY2XZX.js} +15 -15
- package/dist/sandbox-export-command-QCJY4GMV.js +1 -1
- package/dist/scaffold.d.ts +1896 -0
- package/dist/scaffold.js +101 -0
- package/dist/{test-command-BOLIU57E.js → test-command-72Y5S22H.js} +4 -4
- package/dist/{validate-command-SYCFEYZN.js → validate-command-KDGH537H.js} +7 -7
- package/dist/{workspace-command-TOB2AJ6X.js → workspace-command-ICSI6PKO.js} +13 -11
- package/dist/workspace-export-AJMGN3CQ.js +1 -1
- package/llms/kinds-agent-mcp.md +2 -1
- package/llms-full.txt +3 -2
- package/llms.txt +1 -1
- package/manifest.json +145 -1
- package/package.json +7 -1
- package/dist/chunk-47WDWMBJ.js +0 -14
package/dist/scaffold.js
ADDED
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import {
|
|
2
|
+
DEFAULT_FRAMEWORK,
|
|
3
|
+
FRAMEWORKS,
|
|
4
|
+
allFrontendPresets,
|
|
5
|
+
findFrontendPreset,
|
|
6
|
+
renderIndexCss,
|
|
7
|
+
resolveFrameworkFlag
|
|
8
|
+
} from "./chunk-YZ4GU6F5.js";
|
|
9
|
+
import {
|
|
10
|
+
ACCENTS,
|
|
11
|
+
ACCENT_TOKENS,
|
|
12
|
+
BASE_COLORS,
|
|
13
|
+
BASE_TOKENS,
|
|
14
|
+
CURATED_THEMES,
|
|
15
|
+
DARK_MODES,
|
|
16
|
+
DEFAULT_BASE_COLOR,
|
|
17
|
+
DEFAULT_DARK_MODE,
|
|
18
|
+
DEFAULT_ICON_LIBRARY,
|
|
19
|
+
DEFAULT_RADIUS,
|
|
20
|
+
FONTS,
|
|
21
|
+
FONT_IDS,
|
|
22
|
+
ICON_LIBRARIES,
|
|
23
|
+
TOKEN_ORDER,
|
|
24
|
+
allIconLibraries,
|
|
25
|
+
buildTheme,
|
|
26
|
+
colorTokens,
|
|
27
|
+
curatedThemes,
|
|
28
|
+
defaultIconLibrary,
|
|
29
|
+
defaultTheme,
|
|
30
|
+
defaultThemeChoice,
|
|
31
|
+
describeFonts,
|
|
32
|
+
findFont,
|
|
33
|
+
findIconLibrary,
|
|
34
|
+
fontDependencies,
|
|
35
|
+
fontImports,
|
|
36
|
+
fontThemeVars,
|
|
37
|
+
iconLibraryOf,
|
|
38
|
+
isAccent,
|
|
39
|
+
isBaseColor,
|
|
40
|
+
normalizeRadius,
|
|
41
|
+
orderedTokens,
|
|
42
|
+
parseColor,
|
|
43
|
+
resolveDarkModeFlag,
|
|
44
|
+
resolveFontFlag,
|
|
45
|
+
resolveIconsFlag,
|
|
46
|
+
resolveThemeFlag,
|
|
47
|
+
themeFromRegistryItem,
|
|
48
|
+
themeGuidanceSection,
|
|
49
|
+
themeSwatch,
|
|
50
|
+
withRadius
|
|
51
|
+
} from "./chunk-6DHJVLYP.js";
|
|
52
|
+
export {
|
|
53
|
+
ACCENTS,
|
|
54
|
+
ACCENT_TOKENS,
|
|
55
|
+
BASE_COLORS,
|
|
56
|
+
BASE_TOKENS,
|
|
57
|
+
CURATED_THEMES,
|
|
58
|
+
DARK_MODES,
|
|
59
|
+
DEFAULT_BASE_COLOR,
|
|
60
|
+
DEFAULT_DARK_MODE,
|
|
61
|
+
DEFAULT_FRAMEWORK,
|
|
62
|
+
DEFAULT_ICON_LIBRARY,
|
|
63
|
+
DEFAULT_RADIUS,
|
|
64
|
+
FONTS,
|
|
65
|
+
FONT_IDS,
|
|
66
|
+
FRAMEWORKS,
|
|
67
|
+
ICON_LIBRARIES,
|
|
68
|
+
TOKEN_ORDER,
|
|
69
|
+
allFrontendPresets,
|
|
70
|
+
allIconLibraries,
|
|
71
|
+
buildTheme,
|
|
72
|
+
colorTokens,
|
|
73
|
+
curatedThemes,
|
|
74
|
+
defaultIconLibrary,
|
|
75
|
+
defaultTheme,
|
|
76
|
+
defaultThemeChoice,
|
|
77
|
+
describeFonts,
|
|
78
|
+
findFont,
|
|
79
|
+
findFrontendPreset,
|
|
80
|
+
findIconLibrary,
|
|
81
|
+
fontDependencies,
|
|
82
|
+
fontImports,
|
|
83
|
+
fontThemeVars,
|
|
84
|
+
iconLibraryOf,
|
|
85
|
+
isAccent,
|
|
86
|
+
isBaseColor,
|
|
87
|
+
normalizeRadius,
|
|
88
|
+
orderedTokens,
|
|
89
|
+
parseColor,
|
|
90
|
+
renderIndexCss,
|
|
91
|
+
resolveDarkModeFlag,
|
|
92
|
+
resolveFontFlag,
|
|
93
|
+
resolveFrameworkFlag,
|
|
94
|
+
resolveIconsFlag,
|
|
95
|
+
resolveThemeFlag,
|
|
96
|
+
themeFromRegistryItem,
|
|
97
|
+
themeGuidanceSection,
|
|
98
|
+
themeSwatch,
|
|
99
|
+
withRadius
|
|
100
|
+
};
|
|
101
|
+
//# sourceMappingURL=scaffold.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
resolveMetaTarget
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-BT2CSEC5.js";
|
|
4
4
|
import "./chunk-DGSF2Q5H.js";
|
|
5
5
|
import "./chunk-7DKX2SPN.js";
|
|
6
6
|
import "./chunk-NDZFBZHC.js";
|
|
@@ -19,7 +19,7 @@ import {
|
|
|
19
19
|
import "./chunk-7REDODS2.js";
|
|
20
20
|
import {
|
|
21
21
|
unknownSubcommand
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-6USV65XA.js";
|
|
23
23
|
import {
|
|
24
24
|
blank,
|
|
25
25
|
detail,
|
|
@@ -28,8 +28,8 @@ import {
|
|
|
28
28
|
success,
|
|
29
29
|
warn
|
|
30
30
|
} from "./chunk-EZG76F7R.js";
|
|
31
|
-
import "./chunk-YYRDLFSJ.js";
|
|
32
31
|
import "./chunk-GNPVYOPB.js";
|
|
32
|
+
import "./chunk-DYCLVQXW.js";
|
|
33
33
|
|
|
34
34
|
// src/deploy/tests.ts
|
|
35
35
|
var TIMEOUT_MS = 12e4;
|
|
@@ -380,4 +380,4 @@ export {
|
|
|
380
380
|
runSuite,
|
|
381
381
|
runTestCommand
|
|
382
382
|
};
|
|
383
|
-
//# sourceMappingURL=test-command-
|
|
383
|
+
//# sourceMappingURL=test-command-72Y5S22H.js.map
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
assertBundleInput,
|
|
3
3
|
loadBundleText
|
|
4
|
-
} from "./chunk-
|
|
5
|
-
import "./chunk-
|
|
6
|
-
import "./chunk-
|
|
4
|
+
} from "./chunk-W2G2WPTB.js";
|
|
5
|
+
import "./chunk-3NFUWXOC.js";
|
|
6
|
+
import "./chunk-6USV65XA.js";
|
|
7
|
+
import "./chunk-HJPTWBLH.js";
|
|
7
8
|
import {
|
|
8
9
|
blank,
|
|
9
10
|
detail,
|
|
@@ -12,13 +13,12 @@ import {
|
|
|
12
13
|
success,
|
|
13
14
|
warn
|
|
14
15
|
} from "./chunk-EZG76F7R.js";
|
|
16
|
+
import "./chunk-GNPVYOPB.js";
|
|
15
17
|
import "./chunk-55VHDNW5.js";
|
|
16
|
-
import "./chunk-
|
|
18
|
+
import "./chunk-DYCLVQXW.js";
|
|
17
19
|
import "./chunk-5L4X5LS6.js";
|
|
18
20
|
import "./chunk-WHOJWOSV.js";
|
|
19
21
|
import "./chunk-5XZ744TS.js";
|
|
20
|
-
import "./chunk-HJPTWBLH.js";
|
|
21
|
-
import "./chunk-GNPVYOPB.js";
|
|
22
22
|
import "./chunk-4HT3BNZ7.js";
|
|
23
23
|
|
|
24
24
|
// src/emit/validate-command.ts
|
|
@@ -119,4 +119,4 @@ function fmt(v) {
|
|
|
119
119
|
export {
|
|
120
120
|
runValidateCommand
|
|
121
121
|
};
|
|
122
|
-
//# sourceMappingURL=validate-command-
|
|
122
|
+
//# sourceMappingURL=validate-command-KDGH537H.js.map
|
|
@@ -1,17 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
2
|
fetchWorkspaceBundle,
|
|
3
3
|
runCodegenCommand
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-2V4YE6QC.js";
|
|
5
5
|
import "./chunk-P3TTMWUP.js";
|
|
6
6
|
import {
|
|
7
7
|
resolveOutputTarget
|
|
8
8
|
} from "./chunk-XQ22GLYS.js";
|
|
9
9
|
import "./chunk-QTNO2WD6.js";
|
|
10
10
|
import "./chunk-ZUTSMMAG.js";
|
|
11
|
-
import "./chunk-ODNMVJ6H.js";
|
|
12
|
-
import "./chunk-VKFQJEMW.js";
|
|
13
|
-
import "./chunk-47WDWMBJ.js";
|
|
14
|
-
import "./chunk-X4DVXBFY.js";
|
|
15
11
|
import "./chunk-7DKX2SPN.js";
|
|
16
12
|
import {
|
|
17
13
|
printMicroserviceSection,
|
|
@@ -21,6 +17,9 @@ import {
|
|
|
21
17
|
isMachineOutput,
|
|
22
18
|
writeJson
|
|
23
19
|
} from "./chunk-NUQCEOKA.js";
|
|
20
|
+
import "./chunk-HQ2CBRVI.js";
|
|
21
|
+
import "./chunk-CMZLPTGW.js";
|
|
22
|
+
import "./chunk-WUSKBXXD.js";
|
|
24
23
|
import {
|
|
25
24
|
fetchOrExplain,
|
|
26
25
|
httpFailure
|
|
@@ -30,28 +29,31 @@ import {
|
|
|
30
29
|
getAccessToken
|
|
31
30
|
} from "./chunk-C56BC2FY.js";
|
|
32
31
|
import "./chunk-7REDODS2.js";
|
|
32
|
+
import "./chunk-X4DVXBFY.js";
|
|
33
33
|
import "./chunk-F6JCFRKO.js";
|
|
34
34
|
import "./chunk-LU7TRWMC.js";
|
|
35
|
+
import "./chunk-YZ4GU6F5.js";
|
|
36
|
+
import "./chunk-6DHJVLYP.js";
|
|
35
37
|
import "./chunk-4BXJGVZ3.js";
|
|
36
38
|
import "./chunk-U3G2UW65.js";
|
|
37
|
-
import "./chunk-
|
|
39
|
+
import "./chunk-3NFUWXOC.js";
|
|
38
40
|
import {
|
|
39
41
|
removedSubcommand,
|
|
40
42
|
unknownSubcommand
|
|
41
|
-
} from "./chunk-
|
|
43
|
+
} from "./chunk-6USV65XA.js";
|
|
44
|
+
import "./chunk-HJPTWBLH.js";
|
|
42
45
|
import {
|
|
43
46
|
formatFields,
|
|
44
47
|
stdoutStyle,
|
|
45
48
|
step,
|
|
46
49
|
success
|
|
47
50
|
} from "./chunk-EZG76F7R.js";
|
|
51
|
+
import "./chunk-GNPVYOPB.js";
|
|
48
52
|
import "./chunk-55VHDNW5.js";
|
|
49
|
-
import "./chunk-
|
|
53
|
+
import "./chunk-DYCLVQXW.js";
|
|
50
54
|
import "./chunk-5L4X5LS6.js";
|
|
51
55
|
import "./chunk-WHOJWOSV.js";
|
|
52
56
|
import "./chunk-5XZ744TS.js";
|
|
53
|
-
import "./chunk-HJPTWBLH.js";
|
|
54
|
-
import "./chunk-GNPVYOPB.js";
|
|
55
57
|
import "./chunk-4HT3BNZ7.js";
|
|
56
58
|
|
|
57
59
|
// src/emit/workspace-command.ts
|
|
@@ -153,4 +155,4 @@ async function runExport(args) {
|
|
|
153
155
|
export {
|
|
154
156
|
runWorkspaceCommand
|
|
155
157
|
};
|
|
156
|
-
//# sourceMappingURL=workspace-command-
|
|
158
|
+
//# sourceMappingURL=workspace-command-ICSI6PKO.js.map
|
package/llms/kinds-agent-mcp.md
CHANGED
|
@@ -2,10 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
> Read when the workspace defines an `agent()` or an `mcpServer()`.
|
|
4
4
|
|
|
5
|
-
- `mcpServer({ name, guid?, description?, instructions?, docs?, enabled?, canonical?, spec?, tags?, history?, tools?, llm?, output? })` — an MCP toolset. `llm?`/`output?` are the same blocks `agent()` takes and are usually absent: an MCP server and an agent are ONE stored object distinguished by `type
|
|
5
|
+
- `mcpServer({ name, guid?, description?, instructions?, docs?, enabled?, canonical?, spec?, tags?, history?, tools?, llm?, output? })` — an MCP toolset. `llm?`/`output?` are the same blocks `agent()` takes and are usually absent: an MCP server and an agent are ONE stored object distinguished by `type`. Returns a handle with `getPath()`/`getUrl(baseUrl)` for the Streamable-HTTP endpoint — `getUrl` is NOT idempotent, a `baseUrl` already carrying an `/x2/mcp/<…>/stream` path THROWS, so resolve ONCE from the instance base URL. Fires on an ephemeral; not in sandbox.
|
|
6
6
|
- `tools?`: a `ToolsetToolEntry[]`. Pass the `tool()` HANDLES directly (`tools: [saveNote]`), like every other collection in the SDK; use the `{ tool, enabled?, auth? }` wrapper only when a tool needs `enabled: false` or per-tool `auth`. `auth` names an auth **table** (a `table({ auth: true })` handle or its name) — Xano's ONLY MCP auth surface (per-tool; there is no server-level gate). An entry that names no tool (no handle, no `id`) THROWS at export rather than emitting the `id: 0` null reference it used to; a deliberate raw `id: 0` warns and is carried through, so a pulled workspace still round-trips.
|
|
7
7
|
- `agent({ name, guid?, description?, docs?, enabled?, canonical?, tags?, history?, llm, tools?, output? })` — an LLM orchestrator. No top-level `instructions`/`prompt`/`spec` — the prompt lives under `llm`. Invoke from a stack with `s.ai.agent.run({ agent, args })`.
|
|
8
8
|
- `llm` (REQUIRED): typed provider settings, a discriminated union on `type` (`"xano-free" | "anthropic" | "openai" | "google-genai"`). Shared fields: `systemPrompt?`, `maxSteps?` (default `5`), and `prompt?` XOR `messages?` (genuinely exclusive: both is a type error and throws — the engine stores ONE `prompt_type`, so one would be dropped); plus provider fields (`apiKey?`, `model?`, `temperature?`, `reasoningEffort?`, …). String fields accept Twig placeholders — `{{ $args.x }}` for run inputs (the `args` of `s.ai.agent.run`), `{{ $env.NAME }}` for env vars.
|
|
9
9
|
- `tools?`: same `ToolsetToolEntry[]` as `mcpServer` — bare `tool()` handles, or a `{ tool, enabled?, auth? }` wrapper when one needs `enabled`/`auth`.
|
|
10
10
|
- `output?`: `{ schema: Record<string, input.*>, enabled? }` — structured-output schema. `schema` is a named-field record authored with the `input.*` catalog, exactly like a `defineFunction`/`query` `input:` map (the stored `structuredOutputsSchema` is the same wire shape as function inputs). e.g. `output: { schema: { priority: input.enum(["low","high"]), summary: input.text() } }`. When you pass the agent *handle* to `s.ai.agent.run({ agent })`, `.result` is typed straight from this schema — no `resultShape` witness needed (the shape is declared once). `resultShape` remains only to override that, or to type an agent referenced by bare name.
|
|
11
11
|
- **Run + read recipe (`s.ai.agent.run`):** bind the run to a var (`s.ai.agent.run({ agent, args, as: "run" })`) — it produces a rich envelope, and the completion is at **`.result`**. Read one structured field with a dotted ref (`response: ref("run.result.priority")`) or the whole completion (`ref("run.result")`, typed from `output.schema`); persist it in a later step the same way (`s.set_var({ name, value: ref("run.result.summary") })`). `args` is a plain object of run inputs (`{ topic: inp("topic") }` — raw literals are fine, e.g. `{ max_steps: 3 }`) surfaced to the agent as `{{ $args.topic }}`. Tool-call / per-step data (when tools ran) rides `.toolCalls` / `.steps` on the same envelope — both optional, absent or empty when no tools executed.
|
|
12
|
+
- **Marketplace:** for chat history, use `@xanots/chatbot`; for vector RAG, use `@xanots/vector` (`tools: [vector.searchTool]`). Find add-ons with `xanots marketplace search <q>`.
|
package/llms-full.txt
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# xanots v0.0.
|
|
1
|
+
# xanots v0.0.3
|
|
2
2
|
|
|
3
3
|
> TypeScript SDK that compiles a typed Xano workspace into the importable packageExport JSON bundle.
|
|
4
4
|
|
|
@@ -646,13 +646,14 @@ The run is isolated in ways that make a correct test fail for reasons the failur
|
|
|
646
646
|
|
|
647
647
|
> Read when the workspace defines an `agent()` or an `mcpServer()`.
|
|
648
648
|
|
|
649
|
-
- `mcpServer({ name, guid?, description?, instructions?, docs?, enabled?, canonical?, spec?, tags?, history?, tools?, llm?, output? })` — an MCP toolset. `llm?`/`output?` are the same blocks `agent()` takes and are usually absent: an MCP server and an agent are ONE stored object distinguished by `type
|
|
649
|
+
- `mcpServer({ name, guid?, description?, instructions?, docs?, enabled?, canonical?, spec?, tags?, history?, tools?, llm?, output? })` — an MCP toolset. `llm?`/`output?` are the same blocks `agent()` takes and are usually absent: an MCP server and an agent are ONE stored object distinguished by `type`. Returns a handle with `getPath()`/`getUrl(baseUrl)` for the Streamable-HTTP endpoint — `getUrl` is NOT idempotent, a `baseUrl` already carrying an `/x2/mcp/<…>/stream` path THROWS, so resolve ONCE from the instance base URL. Fires on an ephemeral; not in sandbox.
|
|
650
650
|
- `tools?`: a `ToolsetToolEntry[]`. Pass the `tool()` HANDLES directly (`tools: [saveNote]`), like every other collection in the SDK; use the `{ tool, enabled?, auth? }` wrapper only when a tool needs `enabled: false` or per-tool `auth`. `auth` names an auth **table** (a `table({ auth: true })` handle or its name) — Xano's ONLY MCP auth surface (per-tool; there is no server-level gate). An entry that names no tool (no handle, no `id`) THROWS at export rather than emitting the `id: 0` null reference it used to; a deliberate raw `id: 0` warns and is carried through, so a pulled workspace still round-trips.
|
|
651
651
|
- `agent({ name, guid?, description?, docs?, enabled?, canonical?, tags?, history?, llm, tools?, output? })` — an LLM orchestrator. No top-level `instructions`/`prompt`/`spec` — the prompt lives under `llm`. Invoke from a stack with `s.ai.agent.run({ agent, args })`.
|
|
652
652
|
- `llm` (REQUIRED): typed provider settings, a discriminated union on `type` (`"xano-free" | "anthropic" | "openai" | "google-genai"`). Shared fields: `systemPrompt?`, `maxSteps?` (default `5`), and `prompt?` XOR `messages?` (genuinely exclusive: both is a type error and throws — the engine stores ONE `prompt_type`, so one would be dropped); plus provider fields (`apiKey?`, `model?`, `temperature?`, `reasoningEffort?`, …). String fields accept Twig placeholders — `{{ $args.x }}` for run inputs (the `args` of `s.ai.agent.run`), `{{ $env.NAME }}` for env vars.
|
|
653
653
|
- `tools?`: same `ToolsetToolEntry[]` as `mcpServer` — bare `tool()` handles, or a `{ tool, enabled?, auth? }` wrapper when one needs `enabled`/`auth`.
|
|
654
654
|
- `output?`: `{ schema: Record<string, input.*>, enabled? }` — structured-output schema. `schema` is a named-field record authored with the `input.*` catalog, exactly like a `defineFunction`/`query` `input:` map (the stored `structuredOutputsSchema` is the same wire shape as function inputs). e.g. `output: { schema: { priority: input.enum(["low","high"]), summary: input.text() } }`. When you pass the agent *handle* to `s.ai.agent.run({ agent })`, `.result` is typed straight from this schema — no `resultShape` witness needed (the shape is declared once). `resultShape` remains only to override that, or to type an agent referenced by bare name.
|
|
655
655
|
- **Run + read recipe (`s.ai.agent.run`):** bind the run to a var (`s.ai.agent.run({ agent, args, as: "run" })`) — it produces a rich envelope, and the completion is at **`.result`**. Read one structured field with a dotted ref (`response: ref("run.result.priority")`) or the whole completion (`ref("run.result")`, typed from `output.schema`); persist it in a later step the same way (`s.set_var({ name, value: ref("run.result.summary") })`). `args` is a plain object of run inputs (`{ topic: inp("topic") }` — raw literals are fine, e.g. `{ max_steps: 3 }`) surfaced to the agent as `{{ $args.topic }}`. Tool-call / per-step data (when tools ran) rides `.toolCalls` / `.steps` on the same envelope — both optional, absent or empty when no tools executed.
|
|
656
|
+
- **Marketplace:** for chat history, use `@xanots/chatbot`; for vector RAG, use `@xanots/vector` (`tools: [vector.searchTool]`). Find add-ons with `xanots marketplace search <q>`.
|
|
656
657
|
|
|
657
658
|
# Realtime def shapes
|
|
658
659
|
|
package/llms.txt
CHANGED
package/manifest.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "xanots",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.3",
|
|
4
4
|
"description": "TypeScript SDK that compiles a typed Xano workspace into the importable packageExport JSON bundle.",
|
|
5
5
|
"coverage": {
|
|
6
6
|
"objectKinds": {
|
|
@@ -8562,6 +8562,34 @@
|
|
|
8562
8562
|
"flag": "--framework <id>",
|
|
8563
8563
|
"description": "Frontend framework to scaffold: react (default), svelte"
|
|
8564
8564
|
},
|
|
8565
|
+
{
|
|
8566
|
+
"flag": "--theme <id>",
|
|
8567
|
+
"description": "shadcn/ui theme — <base> or <base>-<accent> (e.g. zinc-blue), a registry theme URL, or a registry item JSON path; an unknown id lists every base and accent"
|
|
8568
|
+
},
|
|
8569
|
+
{
|
|
8570
|
+
"flag": "--radius <len>",
|
|
8571
|
+
"description": "Corner radius for the scaffold's theme — a number of rem (0, 0.5, 1) or a CSS length"
|
|
8572
|
+
},
|
|
8573
|
+
{
|
|
8574
|
+
"flag": "--dark <mode>",
|
|
8575
|
+
"description": "What switches the app into its dark palette: system (default, follows the OS), toggle (adds a control), off"
|
|
8576
|
+
},
|
|
8577
|
+
{
|
|
8578
|
+
"flag": "--font <id>",
|
|
8579
|
+
"description": "Body typeface, self-hosted from its @fontsource package (default: the system stack)"
|
|
8580
|
+
},
|
|
8581
|
+
{
|
|
8582
|
+
"flag": "--font-mono <id>",
|
|
8583
|
+
"description": "Code typeface (default: the system mono stack)"
|
|
8584
|
+
},
|
|
8585
|
+
{
|
|
8586
|
+
"flag": "--font-heading <id>",
|
|
8587
|
+
"description": "Heading typeface, bound to h1–h6 (default: inherits the body face)"
|
|
8588
|
+
},
|
|
8589
|
+
{
|
|
8590
|
+
"flag": "--icons <id>",
|
|
8591
|
+
"description": "Icon set: lucide (default), tabler, phosphor"
|
|
8592
|
+
},
|
|
8565
8593
|
{
|
|
8566
8594
|
"flag": "--ai <preset>",
|
|
8567
8595
|
"description": "AI instruction files to scaffold: claude, codex, cursor, none"
|
|
@@ -8700,6 +8728,34 @@
|
|
|
8700
8728
|
"flag": "--framework <id>",
|
|
8701
8729
|
"description": "Frontend framework to scaffold: react (default), svelte"
|
|
8702
8730
|
},
|
|
8731
|
+
{
|
|
8732
|
+
"flag": "--theme <id>",
|
|
8733
|
+
"description": "shadcn/ui theme — <base> or <base>-<accent> (e.g. zinc-blue), a registry theme URL, or a registry item JSON path; an unknown id lists every base and accent"
|
|
8734
|
+
},
|
|
8735
|
+
{
|
|
8736
|
+
"flag": "--radius <len>",
|
|
8737
|
+
"description": "Corner radius for the scaffold's theme — a number of rem (0, 0.5, 1) or a CSS length"
|
|
8738
|
+
},
|
|
8739
|
+
{
|
|
8740
|
+
"flag": "--dark <mode>",
|
|
8741
|
+
"description": "What switches the app into its dark palette: system (default, follows the OS), toggle (adds a control), off"
|
|
8742
|
+
},
|
|
8743
|
+
{
|
|
8744
|
+
"flag": "--font <id>",
|
|
8745
|
+
"description": "Body typeface, self-hosted from its @fontsource package (default: the system stack)"
|
|
8746
|
+
},
|
|
8747
|
+
{
|
|
8748
|
+
"flag": "--font-mono <id>",
|
|
8749
|
+
"description": "Code typeface (default: the system mono stack)"
|
|
8750
|
+
},
|
|
8751
|
+
{
|
|
8752
|
+
"flag": "--font-heading <id>",
|
|
8753
|
+
"description": "Heading typeface, bound to h1–h6 (default: inherits the body face)"
|
|
8754
|
+
},
|
|
8755
|
+
{
|
|
8756
|
+
"flag": "--icons <id>",
|
|
8757
|
+
"description": "Icon set: lucide (default), tabler, phosphor"
|
|
8758
|
+
},
|
|
8703
8759
|
{
|
|
8704
8760
|
"flag": "--ai <preset>",
|
|
8705
8761
|
"description": "AI instruction files to scaffold: claude, codex, cursor, none"
|
|
@@ -8901,6 +8957,34 @@
|
|
|
8901
8957
|
"flag": "--framework <id>",
|
|
8902
8958
|
"description": "Frontend framework to scaffold: react (default), svelte"
|
|
8903
8959
|
},
|
|
8960
|
+
{
|
|
8961
|
+
"flag": "--theme <id>",
|
|
8962
|
+
"description": "shadcn/ui theme — <base> or <base>-<accent> (e.g. zinc-blue), a registry theme URL, or a registry item JSON path; an unknown id lists every base and accent"
|
|
8963
|
+
},
|
|
8964
|
+
{
|
|
8965
|
+
"flag": "--radius <len>",
|
|
8966
|
+
"description": "Corner radius for the scaffold's theme — a number of rem (0, 0.5, 1) or a CSS length"
|
|
8967
|
+
},
|
|
8968
|
+
{
|
|
8969
|
+
"flag": "--dark <mode>",
|
|
8970
|
+
"description": "What switches the app into its dark palette: system (default, follows the OS), toggle (adds a control), off"
|
|
8971
|
+
},
|
|
8972
|
+
{
|
|
8973
|
+
"flag": "--font <id>",
|
|
8974
|
+
"description": "Body typeface, self-hosted from its @fontsource package (default: the system stack)"
|
|
8975
|
+
},
|
|
8976
|
+
{
|
|
8977
|
+
"flag": "--font-mono <id>",
|
|
8978
|
+
"description": "Code typeface (default: the system mono stack)"
|
|
8979
|
+
},
|
|
8980
|
+
{
|
|
8981
|
+
"flag": "--font-heading <id>",
|
|
8982
|
+
"description": "Heading typeface, bound to h1–h6 (default: inherits the body face)"
|
|
8983
|
+
},
|
|
8984
|
+
{
|
|
8985
|
+
"flag": "--icons <id>",
|
|
8986
|
+
"description": "Icon set: lucide (default), tabler, phosphor"
|
|
8987
|
+
},
|
|
8904
8988
|
{
|
|
8905
8989
|
"flag": "--ai <preset>",
|
|
8906
8990
|
"description": "AI instruction files to scaffold: claude, codex, cursor, none"
|
|
@@ -8912,6 +8996,10 @@
|
|
|
8912
8996
|
{
|
|
8913
8997
|
"flag": "--no-install",
|
|
8914
8998
|
"description": "Skip the post-scaffold npm install"
|
|
8999
|
+
},
|
|
9000
|
+
{
|
|
9001
|
+
"flag": "--marketplace <pkgs>",
|
|
9002
|
+
"description": "Add-on packages to install and register, comma-separated"
|
|
8915
9003
|
}
|
|
8916
9004
|
],
|
|
8917
9005
|
"description": "Scaffold a new XanoTS project"
|
|
@@ -9201,6 +9289,34 @@
|
|
|
9201
9289
|
"flag": "--framework <id>",
|
|
9202
9290
|
"description": "Frontend framework to scaffold: react (default), svelte"
|
|
9203
9291
|
},
|
|
9292
|
+
{
|
|
9293
|
+
"flag": "--theme <id>",
|
|
9294
|
+
"description": "shadcn/ui theme — <base> or <base>-<accent> (e.g. zinc-blue), a registry theme URL, or a registry item JSON path; an unknown id lists every base and accent"
|
|
9295
|
+
},
|
|
9296
|
+
{
|
|
9297
|
+
"flag": "--radius <len>",
|
|
9298
|
+
"description": "Corner radius for the scaffold's theme — a number of rem (0, 0.5, 1) or a CSS length"
|
|
9299
|
+
},
|
|
9300
|
+
{
|
|
9301
|
+
"flag": "--dark <mode>",
|
|
9302
|
+
"description": "What switches the app into its dark palette: system (default, follows the OS), toggle (adds a control), off"
|
|
9303
|
+
},
|
|
9304
|
+
{
|
|
9305
|
+
"flag": "--font <id>",
|
|
9306
|
+
"description": "Body typeface, self-hosted from its @fontsource package (default: the system stack)"
|
|
9307
|
+
},
|
|
9308
|
+
{
|
|
9309
|
+
"flag": "--font-mono <id>",
|
|
9310
|
+
"description": "Code typeface (default: the system mono stack)"
|
|
9311
|
+
},
|
|
9312
|
+
{
|
|
9313
|
+
"flag": "--font-heading <id>",
|
|
9314
|
+
"description": "Heading typeface, bound to h1–h6 (default: inherits the body face)"
|
|
9315
|
+
},
|
|
9316
|
+
{
|
|
9317
|
+
"flag": "--icons <id>",
|
|
9318
|
+
"description": "Icon set: lucide (default), tabler, phosphor"
|
|
9319
|
+
},
|
|
9204
9320
|
{
|
|
9205
9321
|
"flag": "--ai <preset>",
|
|
9206
9322
|
"description": "AI instruction files to scaffold: claude, codex, cursor, none"
|
|
@@ -9468,6 +9584,34 @@
|
|
|
9468
9584
|
"flag": "--framework <id>",
|
|
9469
9585
|
"description": "Frontend framework to scaffold: react (default), svelte"
|
|
9470
9586
|
},
|
|
9587
|
+
{
|
|
9588
|
+
"flag": "--theme <id>",
|
|
9589
|
+
"description": "shadcn/ui theme — <base> or <base>-<accent> (e.g. zinc-blue), a registry theme URL, or a registry item JSON path; an unknown id lists every base and accent"
|
|
9590
|
+
},
|
|
9591
|
+
{
|
|
9592
|
+
"flag": "--radius <len>",
|
|
9593
|
+
"description": "Corner radius for the scaffold's theme — a number of rem (0, 0.5, 1) or a CSS length"
|
|
9594
|
+
},
|
|
9595
|
+
{
|
|
9596
|
+
"flag": "--dark <mode>",
|
|
9597
|
+
"description": "What switches the app into its dark palette: system (default, follows the OS), toggle (adds a control), off"
|
|
9598
|
+
},
|
|
9599
|
+
{
|
|
9600
|
+
"flag": "--font <id>",
|
|
9601
|
+
"description": "Body typeface, self-hosted from its @fontsource package (default: the system stack)"
|
|
9602
|
+
},
|
|
9603
|
+
{
|
|
9604
|
+
"flag": "--font-mono <id>",
|
|
9605
|
+
"description": "Code typeface (default: the system mono stack)"
|
|
9606
|
+
},
|
|
9607
|
+
{
|
|
9608
|
+
"flag": "--font-heading <id>",
|
|
9609
|
+
"description": "Heading typeface, bound to h1–h6 (default: inherits the body face)"
|
|
9610
|
+
},
|
|
9611
|
+
{
|
|
9612
|
+
"flag": "--icons <id>",
|
|
9613
|
+
"description": "Icon set: lucide (default), tabler, phosphor"
|
|
9614
|
+
},
|
|
9471
9615
|
{
|
|
9472
9616
|
"flag": "--ai <preset>",
|
|
9473
9617
|
"description": "AI instruction files to scaffold: claude, codex, cursor, none"
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xanots/sdk",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.3",
|
|
4
4
|
"description": "XanoTS — your Xano backend as TypeScript. `xanots deploy` ships your typed workspace (and an optional static frontend) to a live, auto-expiring ephemeral environment and prints its URL. init → deploy → URL.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"xanots",
|
|
@@ -40,6 +40,10 @@
|
|
|
40
40
|
"types": "./dist/node.d.ts",
|
|
41
41
|
"import": "./dist/node.js"
|
|
42
42
|
},
|
|
43
|
+
"./scaffold": {
|
|
44
|
+
"types": "./dist/scaffold.d.ts",
|
|
45
|
+
"import": "./dist/scaffold.js"
|
|
46
|
+
},
|
|
43
47
|
"./codegen": {
|
|
44
48
|
"types": "./dist/codegen.d.ts",
|
|
45
49
|
"import": "./dist/codegen.js"
|
|
@@ -67,6 +71,8 @@
|
|
|
67
71
|
"codegen:sweep": "tsx scripts/codegen-sweep.ts",
|
|
68
72
|
"codegen:replay": "tsx scripts/codegen-replay.ts",
|
|
69
73
|
"codegen:imports": "tsx scripts/codegen-imports.ts",
|
|
74
|
+
"codegen:themes": "tsx scripts/gen-shadcn-themes.ts",
|
|
75
|
+
"codegen:fonts": "tsx scripts/gen-shadcn-fonts.ts",
|
|
70
76
|
"audit:spec-drift": "tsx scripts/spec-drift.ts",
|
|
71
77
|
"audit:special-required": "tsx scripts/special-required.ts",
|
|
72
78
|
"audit:output-flag": "tsx scripts/audit-output-flag.ts",
|
package/dist/chunk-47WDWMBJ.js
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
// src/emit/npm.ts
|
|
2
|
-
import { spawnSync } from "child_process";
|
|
3
|
-
function npmBinary() {
|
|
4
|
-
return process.platform === "win32" ? "npm.cmd" : "npm";
|
|
5
|
-
}
|
|
6
|
-
function runNpm(args, cwd) {
|
|
7
|
-
const res = spawnSync(npmBinary(), [...args], { cwd, stdio: "inherit" });
|
|
8
|
-
return res.status ?? 1;
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
export {
|
|
12
|
-
runNpm
|
|
13
|
-
};
|
|
14
|
-
//# sourceMappingURL=chunk-47WDWMBJ.js.map
|