@jskit-ai/agent-docs 0.1.305 → 0.1.306

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.
@@ -516,6 +516,15 @@ arguments and result pass 64 KiB. The model must still write the call in one
516
516
  step: the API engine asks for at most 32,000 output tokens a step, and a model's
517
517
  own output limit, or its reasoning, can leave less.
518
518
 
519
+ By default the assistant refuses a tool's arguments past 32 KiB and its result
520
+ past 48 KiB ([limits](./assistant-conversation.md#application-tools)). An
521
+ action that takes a whole document (a template, a plan, a long settings record)
522
+ as its input usually works on small documents and fails on the largest, and
523
+ the model must write the whole document again on every edit. Prefer actions
524
+ shaped as changes for the assistant (add, update or remove one part, by id),
525
+ and call each tool with the largest real document, seeded and library records
526
+ included, not only with the small ones tests create.
527
+
519
528
  ### Framework account and workspace actions
520
529
 
521
530
  Account and workspace action owners supply assistant-specific descriptions,
@@ -57,6 +57,8 @@ truthful model-facing output; the assistant validates the result against
57
57
  `extensions.assistant.output` and rejects unexpected fields, so a contract
58
58
  that promises what execution cannot return fails at run time, not at review
59
59
  ([Assistant](/guide/app-extras/assistant#database-surface-action-tools)).
60
+ Call it with the largest real input too, seeded records included: a tool's
61
+ arguments stop at 32 KiB and its result at 48 KiB by default.
60
62
 
61
63
  **Example:** sparse primary fields stay sparse, and an included record is read
62
64
  from its lookup container (`items[0].lookups.pet.name`); a contract that
@@ -210,6 +210,19 @@ translate a key and show any other string as written:
210
210
  { label: "Reports" }
211
211
  ```
212
212
 
213
+ ## Content the app ships as data
214
+
215
+ Names and descriptions in records the app seeds or ships, such as a
216
+ catalogue's items or a library's templates, are the app's own text. Prefer
217
+ storing their message key (`app.templates.starter.name`) with the English in
218
+ the app's `en` messages, and show the field with `text()` from
219
+ `useJskitText()`, the helper placement labels use: it translates a key and
220
+ shows any other string as written. Stored English cannot follow the user's
221
+ language, and matching it back to a key breaks once someone edits it. When a
222
+ person renames their own copy, the field takes what they wrote and shows it as
223
+ written. Server code that writes such a field into an email or an export
224
+ resolves the key with `createServerI18n` (see [Emails](#emails)).
225
+
213
226
  ## Dates and numbers
214
227
 
215
228
  JSKIT formats dates, times, numbers and relative times with `Intl` in the
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jskit-ai/agent-docs",
3
- "version": "0.1.305",
3
+ "version": "0.1.306",
4
4
  "description": "Distributed JSKIT agent references, prompts, guides, and generated reference maps.",
5
5
  "type": "module",
6
6
  "files": [
@@ -50,7 +50,7 @@
50
50
  },
51
51
  "devDependencies": {
52
52
  "@jskit-ai/config-eslint": "0.1.250",
53
- "@jskit-ai/jskit-catalog": "0.2.57",
53
+ "@jskit-ai/jskit-catalog": "0.2.58",
54
54
  "@playwright/test": "1.61.1",
55
55
  "@vitejs/plugin-vue": "^6.0.7",
56
56
  "eslint": "^10.8.0",
@@ -51,7 +51,7 @@
51
51
  },
52
52
  "devDependencies": {
53
53
  "@jskit-ai/config-eslint": "0.1.250",
54
- "@jskit-ai/jskit-catalog": "0.2.57",
54
+ "@jskit-ai/jskit-catalog": "0.2.58",
55
55
  "@playwright/test": "1.61.1",
56
56
  "@vitejs/plugin-vue": "^6.0.7",
57
57
  "eslint": "^10.8.0",
@@ -15,7 +15,7 @@ A concrete Fastify, Vue, and JSKIT application foundation for products that do n
15
15
 
16
16
  - Id: `app/minimal-foundation`
17
17
  - Keywords: `app`, `fastify`, `foundation`, `minimal`, `server`, `vite`, `vue`
18
- - Owner: `@jskit-ai/agent-docs@0.1.305`
18
+ - Owner: `@jskit-ai/agent-docs@0.1.306`
19
19
  - Read: [PATTERN.md](../../skills/jskit/references/patterns/app/minimal-foundation/PATTERN.md)
20
20
  - Examples: [example/](../../skills/jskit/references/patterns/app/minimal-foundation/example/)
21
21
  - Requires: `@jskit-ai/http-runtime`, `@jskit-ai/kernel`
@@ -26,7 +26,7 @@ A concrete JSKIT web application foundation with responsive shell navigation, se
26
26
 
27
27
  - Id: `app/shell-foundation`
28
28
  - Keywords: `app`, `foundation`, `material`, `navigation`, `placements`, `shell`, `vite`, `vue`
29
- - Owner: `@jskit-ai/agent-docs@0.1.305`
29
+ - Owner: `@jskit-ai/agent-docs@0.1.306`
30
30
  - Read: [PATTERN.md](../../skills/jskit/references/patterns/app/shell-foundation/PATTERN.md)
31
31
  - Examples: [example/](../../skills/jskit/references/patterns/app/shell-foundation/example/)
32
32
  - Requires: `@jskit-ai/http-runtime`, `@jskit-ai/kernel`, `@jskit-ai/shell-web`
@@ -356,7 +356,7 @@ Define a server feature through explicit capabilities and first-class actions, a
356
356
 
357
357
  - Id: `server/feature-package`
358
358
  - Keywords: `actions`, `aggregate`, `feature`, `handle`, `orchestration`, `owns`, `package`, `provider`, `repository`, `routes`, `server`, `table resource`
359
- - Owner: `@jskit-ai/agent-docs@0.1.305`
359
+ - Owner: `@jskit-ai/agent-docs@0.1.306`
360
360
  - Read: [PATTERN.md](../../skills/jskit/references/patterns/server/feature-package/PATTERN.md)
361
361
  - Examples: [example/](../../skills/jskit/references/patterns/server/feature-package/example/)
362
362
  - Requires: `@jskit-ai/kernel`
@@ -15,7 +15,7 @@ A concrete Fastify, Vue, and JSKIT application foundation for products that do n
15
15
 
16
16
  - Id: `app/minimal-foundation`
17
17
  - Keywords: `app`, `fastify`, `foundation`, `minimal`, `server`, `vite`, `vue`
18
- - Owner: `@jskit-ai/agent-docs@0.1.305`
18
+ - Owner: `@jskit-ai/agent-docs@0.1.306`
19
19
  - Read: [PATTERN.md](patterns/app/minimal-foundation/PATTERN.md)
20
20
  - Examples: [example/](patterns/app/minimal-foundation/example/)
21
21
  - Requires: `@jskit-ai/http-runtime`, `@jskit-ai/kernel`
@@ -26,7 +26,7 @@ A concrete JSKIT web application foundation with responsive shell navigation, se
26
26
 
27
27
  - Id: `app/shell-foundation`
28
28
  - Keywords: `app`, `foundation`, `material`, `navigation`, `placements`, `shell`, `vite`, `vue`
29
- - Owner: `@jskit-ai/agent-docs@0.1.305`
29
+ - Owner: `@jskit-ai/agent-docs@0.1.306`
30
30
  - Read: [PATTERN.md](patterns/app/shell-foundation/PATTERN.md)
31
31
  - Examples: [example/](patterns/app/shell-foundation/example/)
32
32
  - Requires: `@jskit-ai/http-runtime`, `@jskit-ai/kernel`, `@jskit-ai/shell-web`
@@ -356,7 +356,7 @@ Define a server feature through explicit capabilities and first-class actions, a
356
356
 
357
357
  - Id: `server/feature-package`
358
358
  - Keywords: `actions`, `aggregate`, `feature`, `handle`, `orchestration`, `owns`, `package`, `provider`, `repository`, `routes`, `server`, `table resource`
359
- - Owner: `@jskit-ai/agent-docs@0.1.305`
359
+ - Owner: `@jskit-ai/agent-docs@0.1.306`
360
360
  - Read: [PATTERN.md](patterns/server/feature-package/PATTERN.md)
361
361
  - Examples: [example/](patterns/server/feature-package/example/)
362
362
  - Requires: `@jskit-ai/kernel`
@@ -50,7 +50,7 @@
50
50
  },
51
51
  "devDependencies": {
52
52
  "@jskit-ai/config-eslint": "0.1.250",
53
- "@jskit-ai/jskit-catalog": "0.2.57",
53
+ "@jskit-ai/jskit-catalog": "0.2.58",
54
54
  "@playwright/test": "1.61.1",
55
55
  "@vitejs/plugin-vue": "^6.0.7",
56
56
  "eslint": "^10.8.0",
@@ -51,7 +51,7 @@
51
51
  },
52
52
  "devDependencies": {
53
53
  "@jskit-ai/config-eslint": "0.1.250",
54
- "@jskit-ai/jskit-catalog": "0.2.57",
54
+ "@jskit-ai/jskit-catalog": "0.2.58",
55
55
  "@playwright/test": "1.61.1",
56
56
  "@vitejs/plugin-vue": "^6.0.7",
57
57
  "eslint": "^10.8.0",
@@ -57,6 +57,8 @@ truthful model-facing output; the assistant validates the result against
57
57
  `extensions.assistant.output` and rejects unexpected fields, so a contract
58
58
  that promises what execution cannot return fails at run time, not at review
59
59
  ([Assistant](/guide/app-extras/assistant#database-surface-action-tools)).
60
+ Call it with the largest real input too, seeded records included: a tool's
61
+ arguments stop at 32 KiB and its result at 48 KiB by default.
60
62
 
61
63
  **Example:** sparse primary fields stay sparse, and an included record is read
62
64
  from its lookup container (`items[0].lookups.pet.name`); a contract that
@@ -210,6 +210,19 @@ translate a key and show any other string as written:
210
210
  { label: "Reports" }
211
211
  ```
212
212
 
213
+ ## Content the app ships as data
214
+
215
+ Names and descriptions in records the app seeds or ships, such as a
216
+ catalogue's items or a library's templates, are the app's own text. Prefer
217
+ storing their message key (`app.templates.starter.name`) with the English in
218
+ the app's `en` messages, and show the field with `text()` from
219
+ `useJskitText()`, the helper placement labels use: it translates a key and
220
+ shows any other string as written. Stored English cannot follow the user's
221
+ language, and matching it back to a key breaks once someone edits it. When a
222
+ person renames their own copy, the field takes what they wrote and shows it as
223
+ written. Server code that writes such a field into an email or an export
224
+ resolves the key with `createServerI18n` (see [Emails](#emails)).
225
+
213
226
  ## Dates and numbers
214
227
 
215
228
  JSKIT formats dates, times, numbers and relative times with `Intl` in the