studiograph 1.3.48-next.205 → 1.3.48-next.207
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/agent/agent-pool.d.ts +3 -0
- package/dist/agent/agent-pool.js.map +1 -1
- package/dist/agent/orchestrator.js +37 -0
- package/dist/agent/orchestrator.js.map +1 -1
- package/dist/agent/prompts/system.md +5 -1
- package/dist/agent/skills/artifact-canvas/skill.md +152 -0
- package/dist/agent/tools/artifact-tools.d.ts +81 -0
- package/dist/agent/tools/artifact-tools.js +158 -0
- package/dist/agent/tools/artifact-tools.js.map +1 -0
- package/dist/core/artifact-bundle.d.ts +69 -0
- package/dist/core/artifact-bundle.js +305 -0
- package/dist/core/artifact-bundle.js.map +1 -0
- package/dist/core/artifact-escape.d.ts +5 -0
- package/dist/core/artifact-escape.js +26 -0
- package/dist/core/artifact-escape.js.map +1 -0
- package/dist/core/artifact-export.d.ts +12 -0
- package/dist/core/artifact-export.js +524 -0
- package/dist/core/artifact-export.js.map +1 -0
- package/dist/core/entity-body-templates.js +14 -0
- package/dist/core/entity-body-templates.js.map +1 -1
- package/dist/core/entity-types-catalog.js +2 -0
- package/dist/core/entity-types-catalog.js.map +1 -1
- package/dist/core/format-registry.d.ts +6 -6
- package/dist/core/format-registry.js +17 -9
- package/dist/core/format-registry.js.map +1 -1
- package/dist/core/validation.d.ts +74 -4
- package/dist/core/validation.js +30 -5
- package/dist/core/validation.js.map +1 -1
- package/dist/mcp/tools.js +281 -0
- package/dist/mcp/tools.js.map +1 -1
- package/dist/server/index.js +11 -0
- package/dist/server/index.js.map +1 -1
- package/dist/server/routes/artifact-export-api.d.ts +11 -0
- package/dist/server/routes/artifact-export-api.js +107 -0
- package/dist/server/routes/artifact-export-api.js.map +1 -0
- package/dist/server/routes/asset-api.d.ts +1 -0
- package/dist/server/routes/asset-api.js +43 -3
- package/dist/server/routes/asset-api.js.map +1 -1
- package/dist/server/routes/chat.d.ts +12 -0
- package/dist/server/routes/chat.js +216 -3
- package/dist/server/routes/chat.js.map +1 -1
- package/dist/server/routes/graph-api.js +12 -1
- package/dist/server/routes/graph-api.js.map +1 -1
- package/dist/services/artifact-library-sources.d.ts +3 -0
- package/dist/services/artifact-library-sources.js +44 -0
- package/dist/services/artifact-library-sources.js.map +1 -0
- package/dist/services/artifact-render-export.d.ts +87 -0
- package/dist/services/artifact-render-export.js +460 -0
- package/dist/services/artifact-render-export.js.map +1 -0
- package/dist/services/asset-finalize-service.js +8 -7
- package/dist/services/asset-finalize-service.js.map +1 -1
- package/dist/services/asset-presign-service.d.ts +7 -7
- package/dist/services/asset-presign-service.js +7 -7
- package/dist/services/assets/base.d.ts +1 -1
- package/dist/services/assets/base.js +7 -0
- package/dist/services/assets/base.js.map +1 -1
- package/dist/web/_app/immutable/assets/{0.B2m1uh6A.css → 0.D7WVex0N.css} +1 -1
- package/dist/web/_app/immutable/assets/17.DcuK5ZVm.css +1 -0
- package/dist/web/_app/immutable/assets/{2.BwSVFwgH.css → 2.DIEJ81Ug.css} +1 -1
- package/dist/web/_app/immutable/assets/4.BTeRB3rN.css +1 -0
- package/dist/web/_app/immutable/assets/5.BtO3vkbQ.css +1 -0
- package/dist/web/_app/immutable/assets/ArtifactEntityView.C4ooklFD.css +1 -0
- package/dist/web/_app/immutable/assets/Rail.vcL9zhHI.css +1 -0
- package/dist/web/_app/immutable/assets/entityHistory.LpmHXasl.css +1 -0
- package/dist/web/_app/immutable/chunks/{CaoJkATx2.js → 3tOOjOom2.js} +1 -1
- package/dist/web/_app/immutable/chunks/B0p2fSEV2.js +1 -0
- package/dist/web/_app/immutable/chunks/B2oi87jG.js +2 -0
- package/dist/web/_app/immutable/chunks/B9KfEsQw2.js +1 -0
- package/dist/web/_app/immutable/chunks/{C8KEu9b42.js → BEzcuphe2.js} +1 -1
- package/dist/web/_app/immutable/chunks/{CVanH98O2.js → BP2iKhkF2.js} +1 -1
- package/dist/web/_app/immutable/chunks/{DLRNKppv2.js → BPtRr_YS2.js} +1 -1
- package/dist/web/_app/immutable/chunks/{CmZ4Uyiq2.js → BQpSoSY92.js} +1 -1
- package/dist/web/_app/immutable/chunks/BV-iCKqa.js +1 -0
- package/dist/web/_app/immutable/chunks/BWd8-bZE.js +1 -0
- package/dist/web/_app/immutable/chunks/BZi3uKF4.js +1 -0
- package/dist/web/_app/immutable/chunks/BaAdkt76.js +2 -0
- package/dist/web/_app/immutable/chunks/{7YBWQbdc.js → BbiC8oKT.js} +1 -1
- package/dist/web/_app/immutable/chunks/{0tlXsLxd.js → BfILUW1n.js} +1 -1
- package/dist/web/_app/immutable/chunks/Bgn-zEMw.js +2 -0
- package/dist/web/_app/immutable/chunks/BjoXfUBc.js +8 -0
- package/dist/web/_app/immutable/chunks/{95MZZ5_8.js → BnCwqFzM.js} +1 -1
- package/dist/web/_app/immutable/chunks/{BeiUCiCs.js → BnOfPoqB.js} +3 -3
- package/dist/web/_app/immutable/chunks/BogHRIpz.js +1 -0
- package/dist/web/_app/immutable/chunks/{fZgIfwXE2.js → Bti_XKwx.js} +2 -2
- package/dist/web/_app/immutable/chunks/BvlmyPN42.js +650 -0
- package/dist/web/_app/immutable/chunks/{CY6DiIka2.js → BwgH_7Xj2.js} +1 -1
- package/dist/web/_app/immutable/chunks/Bz4lFk-Q.js +1 -0
- package/dist/web/_app/immutable/chunks/C01Y3qtJ2.js +2 -0
- package/dist/web/_app/immutable/chunks/C1B4xDs0.js +1 -0
- package/dist/web/_app/immutable/chunks/C2FLC6Ly.js +8 -0
- package/dist/web/_app/immutable/chunks/C2UP30wc2.js +1 -0
- package/dist/web/_app/immutable/chunks/{CC8HhqH9.js → C30I5g0u.js} +1 -1
- package/dist/web/_app/immutable/chunks/C4PTvPrm.js +1 -0
- package/dist/web/_app/immutable/chunks/CEahbtnP.js +1 -0
- package/dist/web/_app/immutable/chunks/CKPAf6Xw.js +2 -0
- package/dist/web/_app/immutable/chunks/{DYkNZprs.js → CMxRTUt2.js} +1 -1
- package/dist/web/_app/immutable/chunks/CXN_S92I.js +1 -0
- package/dist/web/_app/immutable/chunks/{DOCiIgLU.js → CcJqA4qm.js} +1 -1
- package/dist/web/_app/immutable/chunks/CcWaWbrI2.js +1 -0
- package/dist/web/_app/immutable/chunks/CdVTDGrp2.js +2 -0
- package/dist/web/_app/immutable/chunks/ChTismlR.js +1 -0
- package/dist/web/_app/immutable/chunks/CnXz-cED.js +1 -0
- package/dist/web/_app/immutable/chunks/Cqm5wAin.js +1 -0
- package/dist/web/_app/immutable/chunks/CuYPXpWU.js +1 -0
- package/dist/web/_app/immutable/chunks/{Biy4jmji2.js → CvqqrTrj.js} +1 -1
- package/dist/web/_app/immutable/chunks/{DL8nyeBG.js → D-4BQ8du.js} +1 -1
- package/dist/web/_app/immutable/chunks/D25NMRpl.js +1 -0
- package/dist/web/_app/immutable/chunks/D3fuZlbh.js +5 -0
- package/dist/web/_app/immutable/chunks/D7r1zUlN.js +1 -0
- package/dist/web/_app/immutable/chunks/{CQMErdlx.js → DEHq-iCF.js} +1 -1
- package/dist/web/_app/immutable/chunks/{D4HyeEWO.js → DHqOpMn82.js} +2 -2
- package/dist/web/_app/immutable/chunks/DKZFPfA72.js +1 -0
- package/dist/web/_app/immutable/chunks/DPk_exlp.js +1 -0
- package/dist/web/_app/immutable/chunks/DVrELb3P.js +1 -0
- package/dist/web/_app/immutable/chunks/DgTkd8oE.js +2 -0
- package/dist/web/_app/immutable/chunks/{p1JFQepN.js → Djj9halz.js} +1 -1
- package/dist/web/_app/immutable/chunks/{CfFgzhAG.js → DmUqT1IX.js} +1 -1
- package/dist/web/_app/immutable/chunks/DpNr1GQ2.js +1 -0
- package/dist/web/_app/immutable/chunks/{D3AHbZTf2.js → DqaOW94P2.js} +1 -1
- package/dist/web/_app/immutable/chunks/{CLSrJJzQ2.js → DrXItXqu2.js} +1 -1
- package/dist/web/_app/immutable/chunks/{C2SvtNY0.js → DvX4Oa_C.js} +1 -1
- package/dist/web/_app/immutable/chunks/LBbDX1uM.js +1 -0
- package/dist/web/_app/immutable/chunks/LEhQiHxa2.js +1 -0
- package/dist/web/_app/immutable/chunks/QRT1MA0c.js +1 -0
- package/dist/web/_app/immutable/chunks/QtWo88_O2.js +7 -0
- package/dist/web/_app/immutable/chunks/{TFFPdeR-.js → RFJVKWCi.js} +1 -1
- package/dist/web/_app/immutable/chunks/RHADMzKl.js +1 -0
- package/dist/web/_app/immutable/chunks/S0HUAj7O.js +2 -0
- package/dist/web/_app/immutable/chunks/VEowf8JH2.js +1 -0
- package/dist/web/_app/immutable/chunks/WVJ_jVyZ.js +2 -0
- package/dist/web/_app/immutable/chunks/biqzvulT.js +1 -0
- package/dist/web/_app/immutable/chunks/e50-izZO2.js +1 -0
- package/dist/web/_app/immutable/chunks/{DTGxUHwb.js → gsuie-4Q.js} +1 -1
- package/dist/web/_app/immutable/chunks/kZXGwyrP.js +1 -0
- package/dist/web/_app/immutable/chunks/m-Bbt1hq.js +1 -0
- package/dist/web/_app/immutable/chunks/rjjyuGhb.js +1 -0
- package/dist/web/_app/immutable/chunks/wpAwA-4W.js +1 -0
- package/dist/web/_app/immutable/entry/app.CQo3GM3A.js +2 -0
- package/dist/web/_app/immutable/entry/start.DR09JxhV.js +1 -0
- package/dist/web/_app/immutable/nodes/0.4waLbSk1.js +2 -0
- package/dist/web/_app/immutable/nodes/{1.BAKKtBjs.js → 1.CsKMsFol.js} +1 -1
- package/dist/web/_app/immutable/nodes/10.DGOnyLmO.js +1 -0
- package/dist/web/_app/immutable/nodes/11.BixmPvvG.js +1 -0
- package/dist/web/_app/immutable/nodes/12.CtQUC3GI.js +1 -0
- package/dist/web/_app/immutable/nodes/{14.Bg7tnef-.js → 14.vA1mvTPn.js} +1 -1
- package/dist/web/_app/immutable/nodes/15.Bn8lI4Mm.js +1 -0
- package/dist/web/_app/immutable/nodes/{16.9H1hVoCQ.js → 16.D5uL5pBt.js} +1 -1
- package/dist/web/_app/immutable/nodes/{17.w7oVmGWW.js → 17.D2gGTr6c.js} +2 -2
- package/dist/web/_app/immutable/nodes/2.Cs4RkhXh.js +122 -0
- package/dist/web/_app/immutable/nodes/3.-x7TJDZu.js +6 -0
- package/dist/web/_app/immutable/nodes/4.CWXReBqY.js +11 -0
- package/dist/web/_app/immutable/nodes/5.-F83kWv1.js +6 -0
- package/dist/web/_app/immutable/nodes/6.Cob9skys.js +1 -0
- package/dist/web/_app/immutable/nodes/{7.BSZf4a3u.js → 7.DdIVfbuU.js} +1 -1
- package/dist/web/_app/immutable/nodes/{8.DJNJcsk3.js → 8.Cl2Cue7K.js} +1 -1
- package/dist/web/_app/immutable/nodes/9.XoCF6bcV.js +1 -0
- package/dist/web/_app/version.json +1 -1
- package/dist/web/index.html +21 -19
- package/package.json +2 -1
- package/dist/web/_app/immutable/assets/17.B0GwXar3.css +0 -1
- package/dist/web/_app/immutable/assets/4.BhPLwB0b.css +0 -1
- package/dist/web/_app/immutable/assets/5.DJwQj_AD.css +0 -1
- package/dist/web/_app/immutable/assets/Rail.CcvCnCER.css +0 -1
- package/dist/web/_app/immutable/chunks/9w_9Wepx.js +0 -1
- package/dist/web/_app/immutable/chunks/B4bLIYz-2.js +0 -1
- package/dist/web/_app/immutable/chunks/BNXN4Gkh2.js +0 -1
- package/dist/web/_app/immutable/chunks/BOSiTh-42.js +0 -1
- package/dist/web/_app/immutable/chunks/BPv3DpUB.js +0 -1
- package/dist/web/_app/immutable/chunks/BQVy_FGj2.js +0 -1
- package/dist/web/_app/immutable/chunks/BZt7Lb922.js +0 -1
- package/dist/web/_app/immutable/chunks/Baw3Yqx9.js +0 -2
- package/dist/web/_app/immutable/chunks/BhPr6hNi.js +0 -1
- package/dist/web/_app/immutable/chunks/BxdYIpff.js +0 -1
- package/dist/web/_app/immutable/chunks/C5LnixWQ.js +0 -2
- package/dist/web/_app/immutable/chunks/CBvY2_0y.js +0 -1
- package/dist/web/_app/immutable/chunks/CFaaXG4z.js +0 -1
- package/dist/web/_app/immutable/chunks/CKQvo_PE2.js +0 -1
- package/dist/web/_app/immutable/chunks/CP8_U450.js +0 -1
- package/dist/web/_app/immutable/chunks/CTvi9YWa.js +0 -2
- package/dist/web/_app/immutable/chunks/CVqlPtYi.js +0 -1
- package/dist/web/_app/immutable/chunks/CWhyOpjr.js +0 -1
- package/dist/web/_app/immutable/chunks/CcBwzweT.js +0 -5
- package/dist/web/_app/immutable/chunks/Ch1kmm3J2.js +0 -1
- package/dist/web/_app/immutable/chunks/CihSiZnn.js +0 -1
- package/dist/web/_app/immutable/chunks/ClkiBAuL.js +0 -8
- package/dist/web/_app/immutable/chunks/CubBffZS.js +0 -1
- package/dist/web/_app/immutable/chunks/CwyJjn3P.js +0 -1
- package/dist/web/_app/immutable/chunks/DSjWMgW7.js +0 -7
- package/dist/web/_app/immutable/chunks/DeVvIYbW.js +0 -1
- package/dist/web/_app/immutable/chunks/DeqP2_yt.js +0 -2
- package/dist/web/_app/immutable/chunks/DhvxW1dK.js +0 -1
- package/dist/web/_app/immutable/chunks/Djs8Ud-L.js +0 -1
- package/dist/web/_app/immutable/chunks/DqZauDkr2.js +0 -1
- package/dist/web/_app/immutable/chunks/DuohT4Lx.js +0 -1
- package/dist/web/_app/immutable/chunks/Dvk9UA5r.js +0 -1
- package/dist/web/_app/immutable/chunks/DwfhvmBf2.js +0 -1
- package/dist/web/_app/immutable/chunks/g3JDkiSS2.js +0 -1
- package/dist/web/_app/immutable/chunks/mbaCFIkB.js +0 -1
- package/dist/web/_app/immutable/chunks/nw6a4z0U.js +0 -2
- package/dist/web/_app/immutable/chunks/sAWHNsBX.js +0 -2
- package/dist/web/_app/immutable/entry/app.CkGGRJbc.js +0 -2
- package/dist/web/_app/immutable/entry/start.DkgTsucO.js +0 -1
- package/dist/web/_app/immutable/nodes/0.YapdAHbw.js +0 -2
- package/dist/web/_app/immutable/nodes/10.Djf1n1Nd.js +0 -1
- package/dist/web/_app/immutable/nodes/11.DP1Mh1TW.js +0 -1
- package/dist/web/_app/immutable/nodes/12.CZ5RH3HI.js +0 -1
- package/dist/web/_app/immutable/nodes/15.DF3OlgCf.js +0 -1
- package/dist/web/_app/immutable/nodes/2.B_vABBrF.js +0 -109
- package/dist/web/_app/immutable/nodes/3.D7QTJ2OL.js +0 -6
- package/dist/web/_app/immutable/nodes/4.DwgdkuKQ.js +0 -11
- package/dist/web/_app/immutable/nodes/5.BT49i7Jl.js +0 -5
- package/dist/web/_app/immutable/nodes/6.B9V0cd2K.js +0 -1
- package/dist/web/_app/immutable/nodes/9.DiF-4BY-.js +0 -1
- /package/dist/web/_app/immutable/chunks/{BKVRLHiJ2.js → BKVRLHiJ.js} +0 -0
- /package/dist/web/_app/immutable/chunks/{Byhopala2.js → Byhopala.js} +0 -0
- /package/dist/web/_app/immutable/chunks/{CfYG72Hc.js → CfYG72Hc2.js} +0 -0
- /package/dist/web/_app/immutable/chunks/{D0W7c6Sg2.js → D0W7c6Sg.js} +0 -0
- /package/dist/web/_app/immutable/chunks/{D1yvtriI2.js → D1yvtriI.js} +0 -0
- /package/dist/web/_app/immutable/chunks/{DXsFrDer.js → DXsFrDer2.js} +0 -0
- /package/dist/web/_app/immutable/chunks/{PhN6tXuJ.js → PhN6tXuJ2.js} +0 -0
|
@@ -11,10 +11,13 @@
|
|
|
11
11
|
import { Agent } from '@mariozechner/pi-agent-core';
|
|
12
12
|
import type { AuthUser } from '../services/auth-service.js';
|
|
13
13
|
import type { MutationEvent } from './tools/graph-tools.js';
|
|
14
|
+
import type { ArtifactCallback, ArtifactToolTarget } from './tools/artifact-tools.js';
|
|
14
15
|
export interface AgentContext {
|
|
15
16
|
user: AuthUser | null;
|
|
16
17
|
onHighlight?: ((ids: string[]) => void) | null;
|
|
17
18
|
onMutation?: ((m: MutationEvent) => void) | null;
|
|
19
|
+
onArtifact?: ArtifactCallback | null;
|
|
20
|
+
currentArtifactTarget?: ArtifactToolTarget | null;
|
|
18
21
|
/**
|
|
19
22
|
* Called by tool wrappers at the start (`enter`) and end (`leave`) of any
|
|
20
23
|
* mutation that targets a folder. Powers the "X's agent is acting" sidebar
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-pool.js","sourceRoot":"","sources":["../../src/agent/agent-pool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAC3G,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-pool.js","sourceRoot":"","sources":["../../src/agent/agent-pool.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,6 +27,8 @@ import { createWebTools } from './tools/web-tools.js';
|
|
|
27
27
|
import { createOpsTools } from './tools/ops-tools.js';
|
|
28
28
|
import { createPermissionTools } from './tools/permission-tools.js';
|
|
29
29
|
import { createCaptureTools } from './tools/capture-tools.js';
|
|
30
|
+
import { createArtifactTools } from './tools/artifact-tools.js';
|
|
31
|
+
import { validateArtifactBundle } from '../core/artifact-bundle.js';
|
|
30
32
|
import { renderEntityTypesSection } from './prompts/entity-types-section.js';
|
|
31
33
|
import { ENTITY_SCHEMAS } from '../core/validation.js';
|
|
32
34
|
import { AuthService } from '../services/auth-service.js';
|
|
@@ -153,6 +155,38 @@ export class AgentOrchestrator {
|
|
|
153
155
|
else
|
|
154
156
|
this._mutationCallback?.(m);
|
|
155
157
|
};
|
|
158
|
+
const onArtifact = (bundle, target) => {
|
|
159
|
+
const sid = this.pool.findSessionForAgent(agent);
|
|
160
|
+
if (sid)
|
|
161
|
+
return this.pool.getContext(sid).onArtifact?.(bundle, target);
|
|
162
|
+
};
|
|
163
|
+
const readArtifact = (target) => {
|
|
164
|
+
const sid = this.pool.findSessionForAgent(agent);
|
|
165
|
+
const ctx = sid ? this.pool.getContext(sid) : { user: this._currentUser };
|
|
166
|
+
const effectiveTarget = target?.entityId ? target : ctx.currentArtifactTarget;
|
|
167
|
+
if (!effectiveTarget?.entityId) {
|
|
168
|
+
throw new Error('No artifact target is available. Pass target.entityId or open an artifact canvas first.');
|
|
169
|
+
}
|
|
170
|
+
if (!effectiveTarget.repo) {
|
|
171
|
+
throw new Error('Artifact target repo is required when inspecting by target.');
|
|
172
|
+
}
|
|
173
|
+
if (!access.hasRepoAccess(ctx.user ?? undefined, effectiveTarget.repo, this.workspaceManager, this.authService)) {
|
|
174
|
+
throw new Error(`Folder "${effectiveTarget.repo}" not found`);
|
|
175
|
+
}
|
|
176
|
+
const entity = this.workspaceManager.getGraph(effectiveTarget.repo).get('artifact', effectiveTarget.entityId);
|
|
177
|
+
let rawBundle;
|
|
178
|
+
try {
|
|
179
|
+
rawBundle = JSON.parse(entity.document.content);
|
|
180
|
+
}
|
|
181
|
+
catch {
|
|
182
|
+
throw new Error(`Artifact ${effectiveTarget.repo}/${effectiveTarget.entityId} body is not a valid JSON bundle.`);
|
|
183
|
+
}
|
|
184
|
+
const validation = validateArtifactBundle(rawBundle);
|
|
185
|
+
if (!validation.ok || !validation.bundle) {
|
|
186
|
+
throw new Error(`Invalid artifact bundle: ${validation.errors.join('; ')}`);
|
|
187
|
+
}
|
|
188
|
+
return validation.bundle;
|
|
189
|
+
};
|
|
156
190
|
const onAgentActivity = (action, repo) => {
|
|
157
191
|
const sid = this.pool.findSessionForAgent(agent);
|
|
158
192
|
if (sid)
|
|
@@ -176,6 +210,7 @@ export class AgentOrchestrator {
|
|
|
176
210
|
...createFsTools(getUser),
|
|
177
211
|
...createWebTools(this.config.search),
|
|
178
212
|
...createCaptureTools(getNothingToCaptureCallback),
|
|
213
|
+
...createArtifactTools(onArtifact, { readArtifact }),
|
|
179
214
|
createLoadSkillTool(skillIndex, graphResolver),
|
|
180
215
|
];
|
|
181
216
|
// Build system prompt — base + auto-generated tool reference + memory + eager skills + skill index
|
|
@@ -292,6 +327,8 @@ export class AgentOrchestrator {
|
|
|
292
327
|
categories['Operations'].push(t);
|
|
293
328
|
else if (name === 'load_skill')
|
|
294
329
|
categories['Skills'].push(t);
|
|
330
|
+
else if (['create_artifact', 'inspect_artifact'].includes(name))
|
|
331
|
+
(categories['Artifacts'] ??= []).push(t);
|
|
295
332
|
else if (['create_entity', 'get_entity', 'update_entity', 'delete_entity', 'search_entities', 'list_entities', 'get_related', 'get_backlinks', 'validate_wikilinks', 'get_workspace_summary', 'list_repos', 'query_dataset', 'append_rows', 'get_entity_schema', 'lint_entities'].includes(name))
|
|
296
333
|
categories['Entity Management'].push(t);
|
|
297
334
|
else if (['create_folder', 'create_subfolder', 'rename_folder', 'delete_folder', 'list_folders', 'move_entity', 'transfer_entity'].includes(name))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../src/agent/orchestrator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../src/agent/orchestrator.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,6 +19,7 @@ You can help users with:
|
|
|
19
19
|
|
|
20
20
|
3. **Asset Management**
|
|
21
21
|
- Upload and manage media files (images, videos, documents)
|
|
22
|
+
- Create or update persisted sandboxed artifact entries from HTML, CSS, and JavaScript bundles
|
|
22
23
|
- Organize assets by entry
|
|
23
24
|
- Track asset metadata
|
|
24
25
|
- Importing a document creates a typed entry that embeds the asset and
|
|
@@ -131,6 +132,7 @@ Every user has a default private folder ("My Folder") auto-created for them. Whe
|
|
|
131
132
|
|
|
132
133
|
**Content format:**
|
|
133
134
|
- Text content → markdown body of the entry
|
|
135
|
+
- Canvas artifacts → call `create_artifact`. When scoped to an open `artifact` entry, the bundle updates that canvas directly. If the user references a different artifact entry, pass `target.entityId` and `target.repo` when known. Otherwise the bundle is saved as a new `artifact` entry and opened in the center content well. Use `inspect_artifact` to visually verify artifact layout with Playwright, including individual slides/pages/frames, before you summarize important visual work. Artifact bundles may request curated local libraries with `libraries: ["three"]`, `["d3"]`, or `["motion"]`; do not use CDN scripts.
|
|
134
136
|
- Binary or externally-hosted files → `url` field pointing to R2 URL or local path
|
|
135
137
|
|
|
136
138
|
## Folder Management
|
|
@@ -227,6 +229,8 @@ You have access to tools in the following categories:
|
|
|
227
229
|
|
|
228
230
|
**Skills** — Load domain-specific guidance on demand (see "Available Skills" below). Users can author their own skills as `skill` entries in any folder — the entity id is the skill name, `description` and `loading` are frontmatter fields, and the markdown body is the instructions. Personal skills go in the user's private folder; team skills go in shared folders.
|
|
229
231
|
|
|
232
|
+
**Artifact Canvas** — Use `create_artifact` to produce or update a persisted sandboxed canvas artifact from an HTML/CSS/JS bundle. Use `inspect_artifact` to visually inspect the rendered artifact with Playwright, including individual slides/pages/frames. This is appropriate for slide decks, letterhead documents, social graphics, prototypes, diagrams, small interactive tools, and other visual outputs. Load the `artifact-canvas` skill before creating a canvas artifact. Canvas artifacts are graph entries that open in the center content well, with PDF, PNG, and HTML downloads available from the artifact toolbar. For 3D, data visualization, and animation, request curated local libraries in the bundle (`three`, `d3`, `motion`) rather than embedding CDN dependencies.
|
|
233
|
+
|
|
230
234
|
### Tool Selection
|
|
231
235
|
|
|
232
236
|
**IMPORTANT — match user intent to the right tool category:**
|
|
@@ -249,7 +253,7 @@ At the end of every response, include exactly 3 contextual follow-up prompts. Fo
|
|
|
249
253
|
Rules:
|
|
250
254
|
- Specific to the conversation, not generic
|
|
251
255
|
- Each prompt is a complete sentence the user could send **as-is** — no placeholder syntax like `[name]`, `[role]`, `{project}`, or `<topic>`. If you don't know the value, don't include that suggestion; the user shouldn't have to edit the prompt before clicking it.
|
|
252
|
-
- Only suggest actions the tools can actually perform.
|
|
256
|
+
- Only suggest actions the tools can actually perform. You may offer canvas artifacts when `create_artifact` can produce them, and you may mention the artifact toolbar's PDF, PNG, and HTML downloads for saved artifacts. Don't offer printing, emailing, publishing, or any other output format Studiograph doesn't produce. When in doubt, stick to search / read / create-entry / update-entry / link / summarise / create-artifact.
|
|
253
257
|
- Refer to folders by their **display name**, never the kebab-case path or slug — say "Brand Refresh", not "brand-refresh". Use the folder's `display_name` from the Folder Inventory when it has one; otherwise title-case the last path segment ("client-work/acme-corp" → "Acme Corp").
|
|
254
258
|
- After creating/updating entries: suggest exploring relationships, adding detail, or related actions
|
|
255
259
|
- One suggestion may be an action ("Create a project entry for X") rather than a question
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: artifact-canvas
|
|
3
|
+
description: Create sandboxed canvas artifacts from HTML, CSS, and JavaScript bundles.
|
|
4
|
+
loading: on-demand
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Artifact Canvas
|
|
8
|
+
|
|
9
|
+
Use this skill when the user asks for a visual or interactive output that should appear in the Studiograph canvas: slide decks, letterhead documents, social graphics, diagrams, prototypes, calculators, one-off tools, or any other artifact you can express as HTML/CSS/JS.
|
|
10
|
+
|
|
11
|
+
## Workflow
|
|
12
|
+
|
|
13
|
+
1. Gather the source material from the user's prompt and any relevant entries.
|
|
14
|
+
2. Create a complete `ArtifactBundle` with text files only.
|
|
15
|
+
3. Call `create_artifact` with the bundle.
|
|
16
|
+
4. Call `inspect_artifact` after meaningful visual work to verify layout with Playwright. Inspect the editor context for the canvas overview/grid, and inspect fullscreen when the artifact uses a presentation/share mode. For decks/documents/social sets, inspect individual frames/pages/slides with `frameSelector` or `frameIndexes`.
|
|
17
|
+
5. Keep your chat response short; the canvas carries the artifact itself.
|
|
18
|
+
6. If the chat is scoped to an open artifact entry, `create_artifact` updates that canvas directly. If the user references a different artifact entry, pass `target.entityId` and `target.repo` when known. Otherwise it creates a new `artifact` graph entry and opens it in the center content well.
|
|
19
|
+
|
|
20
|
+
## Bundle Shape
|
|
21
|
+
|
|
22
|
+
Use `schemaVersion: 1`.
|
|
23
|
+
|
|
24
|
+
Set `kind` to one of:
|
|
25
|
+
- `html`
|
|
26
|
+
- `document`
|
|
27
|
+
- `slides`
|
|
28
|
+
- `social`
|
|
29
|
+
- `app`
|
|
30
|
+
- `custom`
|
|
31
|
+
|
|
32
|
+
Use `viewport` to define the canvas size:
|
|
33
|
+
- Slides: `1280 × 720`, mode `fixed`
|
|
34
|
+
- Social square: `1080 × 1080`, mode `fixed`
|
|
35
|
+
- Social portrait: `1080 × 1350`, mode `fixed`
|
|
36
|
+
- Documents: `816 × 1056`, mode `paged` for US Letter at 96dpi
|
|
37
|
+
- Responsive prototypes: choose a sensible width/height and mode `responsive`
|
|
38
|
+
|
|
39
|
+
Use optional `display` to describe how the artifact should appear in fullscreen/share contexts. This is generic host behavior, not tied to `kind`:
|
|
40
|
+
- `fullscreenFit: "contain"` fits the declared viewport inside the browser viewport.
|
|
41
|
+
- `fullscreenFit: "width"` fits the declared viewport to the browser width and allows vertical scrolling.
|
|
42
|
+
- `fullscreenFit: "none"` renders at declared size and lets the host scroll if needed.
|
|
43
|
+
- `background: "neutral"` uses a neutral presentation surface behind the artifact.
|
|
44
|
+
- `background: "transparent"` lets the page/background show through.
|
|
45
|
+
- `fullscreenViewport: { "width": 1280, "height": 720 }` optionally tells the host which single frame size to fit in fullscreen/share mode when the editor viewport is larger than one frame.
|
|
46
|
+
- `controls.stepper: { "selector": "[data-artifact-frame]", "label": "Slide" }` asks the Studiograph chrome to provide a generic previous/current/next control in fullscreen/share mode for a sequence of frames.
|
|
47
|
+
- `controls.reset: true` asks the chrome to include a reset/restart button for the sequence control.
|
|
48
|
+
|
|
49
|
+
If `display` is omitted, the host defaults to `contain` for fixed/responsive viewports and `width` for paged viewports.
|
|
50
|
+
|
|
51
|
+
Use optional `libraries` when the artifact needs one of Studiograph's curated local runtimes:
|
|
52
|
+
- `"three"` exposes `window.THREE` for 3D/WebGL scenes.
|
|
53
|
+
- `"d3"` exposes `window.d3` for charts, diagrams, data visualization, force layouts, and data art.
|
|
54
|
+
- `"motion"` exposes `window.Motion` for DOM/SVG animation and short interactive explainers.
|
|
55
|
+
|
|
56
|
+
These libraries are loaded from Studiograph's local runtime, not the network. Do not include CDN `<script>` tags or pasted third-party library source. Put your own artifact logic in JS files in `files`; those files run after requested libraries are ready.
|
|
57
|
+
|
|
58
|
+
Do not request framework/source component kits such as shadcn, Bits UI, or wireframe-ui as artifact runtime libraries. The Artifact Canvas renders plain HTML/CSS/JS without a React/Svelte/Riot build step. For wireframes and shadcn-style UI mockups, create the components directly as semantic HTML and self-contained CSS inside the bundle. Use accessible roles and states, neutral design tokens, realistic spacing, and component patterns that resemble the requested system, but do not depend on those packages being present in the iframe.
|
|
59
|
+
|
|
60
|
+
For wireframes, prefer fast low-fidelity primitives:
|
|
61
|
+
- grayscale surfaces, 1px borders, dashed placeholders, skeleton blocks, and simple labels;
|
|
62
|
+
- reusable CSS classes for buttons, inputs, cards, nav items, sidebars, modals, tables, and tabs;
|
|
63
|
+
- lightweight JS only for stateful prototype interactions.
|
|
64
|
+
|
|
65
|
+
For shadcn-style component mockups, emulate the visual/component conventions in plain CSS:
|
|
66
|
+
- border radius around 6-8px, subtle borders, compact controls, clear focus states;
|
|
67
|
+
- semantic `button`, `input`, `select`, `dialog`, `nav`, `table`, and `section` markup;
|
|
68
|
+
- no Tailwind runtime, React components, Radix primitives, or generated imports.
|
|
69
|
+
|
|
70
|
+
## Multi-Frame Artifacts
|
|
71
|
+
|
|
72
|
+
For artifacts made of multiple authored surfaces, use a generic frame sequence. This applies to slide decks, documents, social campaigns, screen flows, and any future multi-page artifact.
|
|
73
|
+
|
|
74
|
+
Use these markup conventions:
|
|
75
|
+
- `data-artifact-layout="sequence"` on the transparent wrapper that arranges frames.
|
|
76
|
+
- `data-artifact-frame` on each individual surface.
|
|
77
|
+
- `data-artifact-pan-surface` on the wrapper when the editor canvas should pan from the space between frames.
|
|
78
|
+
- Optional `data-sg-name`, `data-sg-role`, and `data-sg-id` attributes on important frames and elements so the user can select them and ask the agent for scoped edits in natural language. Keep names human-facing, such as `Cover title`, `Pricing table`, `Slide 4 image`, or `Primary CTA`; do not use implementation jargon.
|
|
79
|
+
|
|
80
|
+
Recommended structure:
|
|
81
|
+
|
|
82
|
+
```html
|
|
83
|
+
<main class="artifact-sequence" data-artifact-layout="sequence" data-artifact-pan-surface>
|
|
84
|
+
<section class="artifact-frame" data-artifact-frame data-index="1" data-sg-name="Cover slide" data-sg-role="slide">
|
|
85
|
+
<h1 data-sg-name="Cover title" data-sg-role="headline">...</h1>
|
|
86
|
+
</section>
|
|
87
|
+
<section class="artifact-frame" data-artifact-frame data-index="2" data-sg-name="Approach slide" data-sg-role="slide">...</section>
|
|
88
|
+
</main>
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
Selection guidance:
|
|
92
|
+
- The Studiograph canvas lets users click one or more visible elements and then ask you to revise "this", "these", or "the selected elements".
|
|
93
|
+
- When the chat context includes selected artifact targets, treat those descriptors as the intended edit scope. Preserve the rest of the bundle unless the user asks for a broader change.
|
|
94
|
+
- Prefer updating stable `data-sg-*` targets, nearby semantic structure, or named classes rather than rewriting the entire artifact.
|
|
95
|
+
- Add semantic attributes to major generated surfaces, headings, images, tables, diagrams, captions, buttons, and callouts so future selections are understandable.
|
|
96
|
+
|
|
97
|
+
Use `data-artifact-context` selectors to make the same DOM serve different contexts:
|
|
98
|
+
- Editor context should usually show all frames on the canvas as a grid or deliberate freeform arrangement.
|
|
99
|
+
- Fullscreen context should present the same frames in the artifact's natural viewing mode: a single-column reader for documents, one active frame at a time for presentations, a lightbox for social sets, or an interactive flow for prototypes.
|
|
100
|
+
- If the editor viewport is a large board but fullscreen should fit one frame, set `display.fullscreenViewport` to that frame's width and height.
|
|
101
|
+
- If fullscreen should advance through one frame at a time, request `display.controls.stepper` and let Studiograph render the controls. Do not build duplicate visible stepper chrome inside the artifact.
|
|
102
|
+
- For editor boards that use `display.fullscreenViewport`, keep `html`, `body`, and the outer sequence wrapper transparent so individual frames appear loose on the host canvas.
|
|
103
|
+
|
|
104
|
+
Do not duplicate the content into separate editor and fullscreen DOM trees. Reflow the same `[data-artifact-frame]` elements with CSS and local JS.
|
|
105
|
+
|
|
106
|
+
The `files` object may include only text files such as:
|
|
107
|
+
- `index.html`
|
|
108
|
+
- `style.css`
|
|
109
|
+
- `script.js`
|
|
110
|
+
- `data.json`
|
|
111
|
+
- `graphic.svg`
|
|
112
|
+
|
|
113
|
+
The `entrypoint` must point to an HTML file in `files`, usually `index.html`.
|
|
114
|
+
|
|
115
|
+
## JavaScript
|
|
116
|
+
|
|
117
|
+
JavaScript is allowed, but it runs only inside a sandboxed iframe. Write self-contained JS. Do not rely on network access, arbitrary external packages, cookies, localStorage, parent window access, downloads, forms, or navigation. If you need 3D, data visualization, or animation, request `libraries: ["three"]`, `libraries: ["d3"]`, or `libraries: ["motion"]` instead of using a CDN.
|
|
118
|
+
|
|
119
|
+
## Constraints
|
|
120
|
+
|
|
121
|
+
- Keep the whole bundle under 512KB.
|
|
122
|
+
- Do not reference external URLs for scripts, styles, fonts, images, APIs, or tracking.
|
|
123
|
+
- Custom fonts may be referenced only from uploaded Studiograph asset URLs (`/api/assets/...`) or `data:` URLs.
|
|
124
|
+
- Inline CSS and JS in separate files when possible.
|
|
125
|
+
- Use embedded SVG, CSS shapes, data URIs, or text-only layouts for assets in v1.
|
|
126
|
+
- Saved artifact entries can be downloaded as PDF, PNG, or HTML from the artifact toolbar.
|
|
127
|
+
- Agents can use `inspect_artifact` to view the rendered artifact through Playwright. Use it to catch layout issues, clipped text, missing frames, script errors, and blocked network requests before telling the user the artifact is ready.
|
|
128
|
+
- Do not promise other export formats unless an export tool is added later.
|
|
129
|
+
|
|
130
|
+
## Example
|
|
131
|
+
|
|
132
|
+
```json
|
|
133
|
+
{
|
|
134
|
+
"schemaVersion": 1,
|
|
135
|
+
"artifactId": "client-overview-slides",
|
|
136
|
+
"title": "Client Overview Slides",
|
|
137
|
+
"kind": "slides",
|
|
138
|
+
"viewport": { "width": 1280, "height": 720, "mode": "fixed" },
|
|
139
|
+
"libraries": ["motion"],
|
|
140
|
+
"display": {
|
|
141
|
+
"fullscreenFit": "contain",
|
|
142
|
+
"background": "neutral",
|
|
143
|
+
"controls": { "stepper": { "selector": "[data-artifact-frame]", "label": "Slide" }, "reset": true }
|
|
144
|
+
},
|
|
145
|
+
"entrypoint": "index.html",
|
|
146
|
+
"files": {
|
|
147
|
+
"index.html": "<main class=\"slide\"><h1>Client Overview</h1></main>",
|
|
148
|
+
"style.css": "body{margin:0;font-family:Inter,system-ui}.slide{width:1280px;height:720px;padding:72px}",
|
|
149
|
+
"script.js": "document.body.dataset.ready='true'"
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
```
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Artifact tools let the agent hand a renderable bundle to the web canvas.
|
|
3
|
+
* The active transport decides whether that bundle updates the currently
|
|
4
|
+
* scoped artifact entry or creates a new persisted artifact entry.
|
|
5
|
+
*/
|
|
6
|
+
import { Type as T } from 'typebox';
|
|
7
|
+
import { type ArtifactBundle } from '../../core/artifact-bundle.js';
|
|
8
|
+
import { type ArtifactInspectOptions, type ArtifactInspectionResult } from '../../services/artifact-render-export.js';
|
|
9
|
+
export interface ArtifactCallbackResult {
|
|
10
|
+
repo: string;
|
|
11
|
+
entityType: 'artifact';
|
|
12
|
+
entityId: string;
|
|
13
|
+
action: 'created' | 'updated';
|
|
14
|
+
}
|
|
15
|
+
export interface ArtifactToolTarget {
|
|
16
|
+
repo?: string;
|
|
17
|
+
entityId?: string;
|
|
18
|
+
}
|
|
19
|
+
export type ArtifactCallback = (bundle: ArtifactBundle, target?: ArtifactToolTarget) => void | ArtifactCallbackResult | Promise<void | ArtifactCallbackResult>;
|
|
20
|
+
export type ArtifactReadCallback = (target?: ArtifactToolTarget) => ArtifactBundle | Promise<ArtifactBundle>;
|
|
21
|
+
export interface ArtifactToolOptions {
|
|
22
|
+
readArtifact?: ArtifactReadCallback | null;
|
|
23
|
+
inspectArtifact?: (bundle: ArtifactBundle, options?: ArtifactInspectOptions) => Promise<ArtifactInspectionResult>;
|
|
24
|
+
}
|
|
25
|
+
export declare function createArtifactTools(onArtifact?: ArtifactCallback | null, options?: ArtifactToolOptions): ({
|
|
26
|
+
name: string;
|
|
27
|
+
label: string;
|
|
28
|
+
description: string;
|
|
29
|
+
parameters: T.TObject<{
|
|
30
|
+
bundle: T.TObject<{}>;
|
|
31
|
+
target: T.TOptional<T.TObject<{
|
|
32
|
+
repo: T.TOptional<T.TString>;
|
|
33
|
+
entityId: T.TOptional<T.TString>;
|
|
34
|
+
}>>;
|
|
35
|
+
}>;
|
|
36
|
+
execute: (_toolCallId: string, params: {
|
|
37
|
+
bundle?: unknown;
|
|
38
|
+
target?: ArtifactToolTarget;
|
|
39
|
+
}) => Promise<{
|
|
40
|
+
content: {
|
|
41
|
+
type: "text";
|
|
42
|
+
text: string;
|
|
43
|
+
}[];
|
|
44
|
+
details: any;
|
|
45
|
+
}>;
|
|
46
|
+
} | {
|
|
47
|
+
name: string;
|
|
48
|
+
label: string;
|
|
49
|
+
description: string;
|
|
50
|
+
parameters: T.TObject<{
|
|
51
|
+
bundle: T.TOptional<T.TObject<{}>>;
|
|
52
|
+
target: T.TOptional<T.TObject<{
|
|
53
|
+
repo: T.TOptional<T.TString>;
|
|
54
|
+
entityId: T.TOptional<T.TString>;
|
|
55
|
+
}>>;
|
|
56
|
+
context: T.TOptional<T.TUnion<[T.TLiteral<"editor">, T.TLiteral<"fullscreen">]>>;
|
|
57
|
+
frameSelector: T.TOptional<T.TString>;
|
|
58
|
+
frameIndexes: T.TOptional<T.TArray<T.TNumber>>;
|
|
59
|
+
maxFrames: T.TOptional<T.TNumber>;
|
|
60
|
+
includePageScreenshot: T.TOptional<T.TBoolean>;
|
|
61
|
+
includeFrameScreenshots: T.TOptional<T.TBoolean>;
|
|
62
|
+
screenshotFormat: T.TOptional<T.TUnion<[T.TLiteral<"jpeg">, T.TLiteral<"png">]>>;
|
|
63
|
+
}>;
|
|
64
|
+
execute: (_toolCallId: string, params: {
|
|
65
|
+
bundle?: unknown;
|
|
66
|
+
target?: ArtifactToolTarget;
|
|
67
|
+
context?: "editor" | "fullscreen";
|
|
68
|
+
frameSelector?: string;
|
|
69
|
+
frameIndexes?: number[];
|
|
70
|
+
maxFrames?: number;
|
|
71
|
+
includePageScreenshot?: boolean;
|
|
72
|
+
includeFrameScreenshots?: boolean;
|
|
73
|
+
screenshotFormat?: "png" | "jpeg";
|
|
74
|
+
}) => Promise<{
|
|
75
|
+
content: {
|
|
76
|
+
type: "text";
|
|
77
|
+
text: string;
|
|
78
|
+
}[];
|
|
79
|
+
details: any;
|
|
80
|
+
}>;
|
|
81
|
+
})[];
|