@lineai/agent-platform-types 0.1.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.
@@ -0,0 +1,167 @@
1
+ import { z } from 'zod';
2
+ import { CollectionAccessSchema, ConnectedIntegrationSchema, ContextFileRefSchema, MemoryCardRefSchema, ResolvedCapabilitiesSchema, } from './capabilities';
3
+ import { PluginCapabilitiesSchema, PluginMcpServerEntrySchema, SkillSchema, } from './plugin';
4
+ /**
5
+ * Task schemas — three distinct shapes:
6
+ *
7
+ * 1. TaskSubmissionSchema — slim shape clients send to the API. Plugin
8
+ * defaults supply most config; only per-task
9
+ * inputs and overrides are required.
10
+ *
11
+ * 2. ResolvedTaskDefinitionSchema — rich shape produced by the orchestrator
12
+ * merger and consumed by the runtime. This is
13
+ * what gets written to GCS as definition.json.
14
+ *
15
+ * 3. TaskRunMcpServerConfigSchema / RuntimeSubagentSchema — pieces shared by
16
+ * both shapes.
17
+ */
18
+ // ---------- Runtime MCP server config (stdio + http) ----------
19
+ export const RuntimeMcpServerConfigSchema = z.object({
20
+ type: z.enum(['stdio', 'http']),
21
+ command: z.string().optional(),
22
+ args: z.array(z.string()).optional(),
23
+ url: z.string().url().optional(),
24
+ headers: z.record(z.string()).optional(),
25
+ env: z.record(z.string()).optional(),
26
+ description: z.string().optional(),
27
+ });
28
+ // ---------- Runtime subagent (flattened, what the SDK consumes) ----------
29
+ export const RuntimeSubagentSchema = z.object({
30
+ description: z.string(),
31
+ prompt: z.string(),
32
+ tools: z.array(z.string()).optional(),
33
+ model: z.string().optional(),
34
+ });
35
+ // ---------- Input/output ----------
36
+ export const InputFileSchema = z.object({
37
+ source: z.string(),
38
+ destination: z.string(),
39
+ });
40
+ export const TaskModeSchema = z.enum(['execute', 'codegen', 'review']);
41
+ // ---------- Task submission (what clients send) ----------
42
+ /**
43
+ * The slim shape line-ai (and any other client) submits to the API.
44
+ *
45
+ * Plugin-owned fields (model, maxTurns, persona, tools, capabilities,
46
+ * subagents, skills, etc.) are intentionally absent — they live on the
47
+ * project's plugin defaults document and are merged in by the orchestrator.
48
+ *
49
+ * The four capability fields (integrations, collections, contextFiles,
50
+ * memoryCards) and mcpServers MAY appear here; capability fields use
51
+ * replace-semantics over plugin defaults, while mcpServers are additive
52
+ * to the plugin catalog (task entries win on key collision).
53
+ */
54
+ export const TaskSubmissionDefinitionSchema = z.object({
55
+ // Required
56
+ id: z
57
+ .string()
58
+ .regex(/^[a-z][a-z0-9-]{0,62}$/, 'ID must start with a lowercase letter and contain only lowercase letters, numbers, and hyphens'),
59
+ name: z.string().max(200),
60
+ instructions: z.string().min(10),
61
+ // Per-run I/O
62
+ inputFiles: z.array(InputFileSchema).optional(),
63
+ outputPatterns: z.array(z.string()).optional(),
64
+ mode: TaskModeSchema.optional(),
65
+ // Trigger payload / arbitrary runtime context
66
+ context: z.record(z.unknown()).optional(),
67
+ // Capability overrides (replace-semantics — when present, plugin defaults
68
+ // for the same field are ignored entirely).
69
+ integrations: z.array(ConnectedIntegrationSchema).optional(),
70
+ collections: z.array(CollectionAccessSchema).optional(),
71
+ contextFiles: z.array(ContextFileRefSchema).optional(),
72
+ memoryCards: z.array(MemoryCardRefSchema).optional(),
73
+ // Additive MCP servers — merged with plugin['mcp-servers'].servers.
74
+ // Task entries win on key collision. Allowed shapes: the plugin http shape
75
+ // for parity with the editor, or the runtime stdio/http shape.
76
+ mcpServers: z
77
+ .record(z.union([PluginMcpServerEntrySchema, RuntimeMcpServerConfigSchema]))
78
+ .optional(),
79
+ });
80
+ export const TaskOverridesSchema = z.object({
81
+ instructions: z.string().optional(),
82
+ inputFiles: z.array(InputFileSchema).optional(),
83
+ });
84
+ export const TaskSubmissionSchema = z
85
+ .object({
86
+ definition: TaskSubmissionDefinitionSchema.optional(),
87
+ workflowRef: z.string().optional(),
88
+ taskRef: z.string().optional(),
89
+ overrides: TaskOverridesSchema.optional(),
90
+ context: z.record(z.unknown()).optional(),
91
+ idempotencyKey: z.string().optional(),
92
+ resumeSessionId: z.string().optional(),
93
+ callbackUrl: z.string().url().optional(),
94
+ })
95
+ .refine((s) => !!(s.definition || s.workflowRef || s.taskRef), 'Task submission requires one of: definition, workflowRef, taskRef');
96
+ // ---------- Resolved task definition (what the runtime executes) ----------
97
+ /**
98
+ * The rich shape produced by the orchestrator merger and consumed by the
99
+ * runtime. Plugin defaults + submission have been merged; subagents are
100
+ * flattened to RuntimeSubagent shape; skills carry full bodies for
101
+ * materialization into .claude/skills/{id}/SKILL.md.
102
+ *
103
+ * This is the schema the runtime validates after downloading definition.json.
104
+ */
105
+ export const ResolvedTaskDefinitionSchema = z.object({
106
+ // Identity
107
+ id: z.string(),
108
+ name: z.string().max(200),
109
+ instructions: z.string().min(10),
110
+ // Execution config (filled by merger from plugin defaults / FALLBACK_DEFAULTS)
111
+ model: z.string(),
112
+ maxTurns: z.number().min(1).max(500),
113
+ timeoutSeconds: z.number().min(60).max(86400),
114
+ workingDir: z.string(),
115
+ mode: TaskModeSchema,
116
+ // System prompt
117
+ systemPrompt: z.string().optional(),
118
+ systemPromptRef: z.string().optional(),
119
+ persona: z.string().optional(),
120
+ constraints: z.array(z.string()).optional(),
121
+ // Tool restrictions
122
+ allowedTools: z.array(z.string()).optional(),
123
+ disabledTools: z.array(z.string()).optional(),
124
+ // SDK features
125
+ capabilities: PluginCapabilitiesSchema.optional(),
126
+ betas: z.array(z.string()).optional(),
127
+ // Per-run I/O
128
+ inputFiles: z.array(InputFileSchema).optional(),
129
+ outputPatterns: z.array(z.string()).optional(),
130
+ context: z.record(z.unknown()).optional(),
131
+ // Plugin-resolved fields
132
+ skills: z.array(SkillSchema).optional(),
133
+ agents: z.record(RuntimeSubagentSchema).optional(),
134
+ mcpServers: z
135
+ .record(z.union([RuntimeMcpServerConfigSchema, z.string()]))
136
+ .optional(),
137
+ // Capability authoring shapes (kept for capabilities-resolver to consume)
138
+ integrations: z.array(ConnectedIntegrationSchema).optional(),
139
+ collections: z.array(CollectionAccessSchema).optional(),
140
+ contextFiles: z.array(ContextFileRefSchema).optional(),
141
+ memoryCards: z.array(MemoryCardRefSchema).optional(),
142
+ // Resolved capability metadata (injected by capabilities-resolver)
143
+ resolvedCapabilities: ResolvedCapabilitiesSchema.optional(),
144
+ });
145
+ // ---------- Fallback defaults (single source of truth) ----------
146
+ /**
147
+ * Platform-wide fallback defaults applied by the merger when neither the
148
+ * task submission nor plugin defaults supply a value. Change them here and
149
+ * every consumer (orchestrator, runtime, service-api, line-ai) picks them
150
+ * up on the next package release.
151
+ *
152
+ * Anything intentionally unset (systemPrompt, persona, constraints, tool
153
+ * restrictions, capability bundles, betas, integrations, collections,
154
+ * contextFiles, memoryCards) has no fallback — undefined means the agent
155
+ * runs without that feature.
156
+ */
157
+ export const FALLBACK_DEFAULTS = {
158
+ model: 'claude-sonnet-4-6',
159
+ maxTurns: 100,
160
+ timeoutSeconds: 3600,
161
+ workingDir: '/workspace',
162
+ mode: 'execute',
163
+ capabilities: {
164
+ promptCaching: true,
165
+ },
166
+ };
167
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90YXNrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFDeEIsT0FBTyxFQUNMLHNCQUFzQixFQUN0QiwwQkFBMEIsRUFDMUIsb0JBQW9CLEVBQ3BCLG1CQUFtQixFQUNuQiwwQkFBMEIsR0FDM0IsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQ0wsd0JBQXdCLEVBQ3hCLDBCQUEwQixFQUMxQixXQUFXLEdBQ1osTUFBTSxVQUFVLENBQUM7QUFFbEI7Ozs7Ozs7Ozs7Ozs7R0FhRztBQUVILGlFQUFpRTtBQUVqRSxNQUFNLENBQUMsTUFBTSw0QkFBNEIsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQ25ELElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQy9CLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQzlCLElBQUksRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLFFBQVEsRUFBRTtJQUNwQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUNoQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxRQUFRLEVBQUU7SUFDeEMsR0FBRyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsUUFBUSxFQUFFO0lBQ3BDLFdBQVcsRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0NBQ25DLENBQUMsQ0FBQztBQUtILDRFQUE0RTtBQUU1RSxNQUFNLENBQUMs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
package/package.json ADDED
@@ -0,0 +1,40 @@
1
+ {
2
+ "name": "@lineai/agent-platform-types",
3
+ "version": "0.1.0",
4
+ "description": "Shared TypeScript types and Zod schemas for the Line AI agent platform (plugins, task submissions, runtime definitions)",
5
+ "main": "build/main/index.js",
6
+ "typings": "build/main/index.d.ts",
7
+ "module": "build/module/index.js",
8
+ "license": "MIT",
9
+ "keywords": [
10
+ "lineai",
11
+ "agent-platform",
12
+ "claude",
13
+ "zod",
14
+ "types"
15
+ ],
16
+ "scripts": {
17
+ "build": "run-p build:main build:module",
18
+ "build:main": "tsc -p tsconfig.json",
19
+ "build:module": "tsc -p tsconfig.module.json",
20
+ "clean": "rm -rf build",
21
+ "prepublishOnly": "pnpm run clean && pnpm run build"
22
+ },
23
+ "engines": {
24
+ "node": ">=18"
25
+ },
26
+ "dependencies": {
27
+ "zod": "^3.23.0"
28
+ },
29
+ "devDependencies": {
30
+ "@types/node": "^20.0.0",
31
+ "npm-run-all": "^4.1.5",
32
+ "typescript": "^5.0.0"
33
+ },
34
+ "files": [
35
+ "build/main",
36
+ "build/module",
37
+ "README.md",
38
+ "LICENSE"
39
+ ]
40
+ }