@intentius/chant-lexicon-fountain 0.41.19 → 0.42.1

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.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "algorithm": "sha256",
3
3
  "artifacts": {
4
- "manifest.json": "cd0d4dd3c48803eee6709fa611c5375995f8c02a6e8e7b29ea02ded205577575",
4
+ "manifest.json": "396ecbcf62fea3c153bb92d5e47899a77a87d9d5ebb28f926a5c89423f678f63",
5
5
  "meta.json": "6666b7a77db9210a329219c6a5e107e5ae8794a34542f7310ce16d9bf95c64f5",
6
6
  "types/index.d.ts": "1dfdcba184fffcf464dac7d1d71ef7abed2ae02a8d638c0de50e0b0317b7eb01",
7
7
  "rules/ftn001-no-secret-literals.ts": "897a4ce1ec790b3c1540d32892603bd33ff4bf30eb6ba4cd2565dee356d4962e",
@@ -17,5 +17,5 @@
17
17
  "skills/chant-fountain-secrets.md": "27e349a91589510a92e518c7d7824a4a322cab5ef242cf5799373a55cbfcd1cd",
18
18
  "skills/chant-fountain-locked-sandboxes.md": "de82f06cb3a08ba6bf3ae45fb9869e21d6da18b9ebe0fc769da8aebaceea7dd1"
19
19
  },
20
- "composite": "031950fb5060b42bd2cf3a7d90390d8bcaac0e1911c3e8225f0532459843f099"
20
+ "composite": "281f824e4c24edfce286365cd54ecb90da246316dc3ae41ff6f33bc6b93ab47a"
21
21
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fountain",
3
- "version": "0.41.19",
3
+ "version": "0.42.1",
4
4
  "chantVersion": ">=0.1.0",
5
5
  "namespace": "Fountain",
6
6
  "specVersion": "v0.3.0"
@@ -0,0 +1,21 @@
1
+ ---
2
+ okf_version: '0.2'
3
+ ---
4
+
5
+ # Resource types
6
+
7
+ * [Agent](/types/Agent.md) - Fountain::V1::Agent
8
+ * [Environment](/types/Environment.md) - Fountain::V1::Environment
9
+ * [Vault](/types/Vault.md) - Fountain::V1::Vault
10
+
11
+ # Rules
12
+
13
+ * [FTN001](/rules/FTN001.md) - no secret literals in fountain resource declarations.
14
+ * [FTN010](/rules/FTN010.md) - Environment declarations must set networking_type explicitly
15
+ * [FTN011](/rules/FTN011.md) - Environments should prefer networking_type: limited over unrestricted
16
+ * [FTN012](/rules/FTN012.md) - Environment env_vars must not carry cloud-credential-shaped keys or values
17
+ * [FTN013](/rules/FTN013.md) - Agent ${VAR} references should resolve against the environment's declared keys
18
+ * [FTN014](/rules/FTN014.md) - Vault keys shadowing a declared Environment key should be visible in review
19
+ * [FTN015](/rules/FTN015.md) - Secret-shaped MCP env keys must be ${VAR} references, not literals
20
+ * [FTN016](/rules/FTN016.md) - Agent runtime must be a known runtime and model canonical provider/model_id
21
+ * [FTN017](/rules/FTN017.md) - Two declarations of the same kind must not resolve to the same fountain name
@@ -0,0 +1,17 @@
1
+ ---
2
+ type: lint-rule
3
+ title: FTN001
4
+ description: no secret literals in fountain resource declarations.
5
+ id: FTN001
6
+ severity: error
7
+ category: security
8
+ lexicon: fountain
9
+ docs: https://intentius.io/chant/lexicons/fountain/rules/
10
+ ---
11
+ no secret literals in fountain resource declarations.
12
+
13
+ ## Applies to
14
+
15
+ - [Agent](/types/Agent.md)
16
+ - [Environment](/types/Environment.md)
17
+ - [Vault](/types/Vault.md)
@@ -0,0 +1,15 @@
1
+ ---
2
+ type: post-synth-check
3
+ title: FTN010
4
+ description: Environment declarations must set networking_type explicitly
5
+ id: FTN010
6
+ severity: error
7
+ category: post-synth
8
+ lexicon: fountain
9
+ docs: https://intentius.io/chant/lexicons/fountain/rules/
10
+ ---
11
+ Environment declarations must set networking_type explicitly
12
+
13
+ ## Applies to
14
+
15
+ - [Environment](/types/Environment.md)
@@ -0,0 +1,15 @@
1
+ ---
2
+ type: post-synth-check
3
+ title: FTN011
4
+ description: 'Environments should prefer networking_type: limited over unrestricted'
5
+ id: FTN011
6
+ severity: error
7
+ category: post-synth
8
+ lexicon: fountain
9
+ docs: https://intentius.io/chant/lexicons/fountain/rules/
10
+ ---
11
+ Environments should prefer networking_type: limited over unrestricted
12
+
13
+ ## Applies to
14
+
15
+ - [Environment](/types/Environment.md)
@@ -0,0 +1,15 @@
1
+ ---
2
+ type: post-synth-check
3
+ title: FTN012
4
+ description: Environment env_vars must not carry cloud-credential-shaped keys or values
5
+ id: FTN012
6
+ severity: error
7
+ category: post-synth
8
+ lexicon: fountain
9
+ docs: https://intentius.io/chant/lexicons/fountain/rules/
10
+ ---
11
+ Environment env_vars must not carry cloud-credential-shaped keys or values
12
+
13
+ ## Applies to
14
+
15
+ - [Environment](/types/Environment.md)
@@ -0,0 +1,16 @@
1
+ ---
2
+ type: post-synth-check
3
+ title: FTN013
4
+ description: Agent ${VAR} references should resolve against the environment's declared keys
5
+ id: FTN013
6
+ severity: error
7
+ category: post-synth
8
+ lexicon: fountain
9
+ docs: https://intentius.io/chant/lexicons/fountain/rules/
10
+ ---
11
+ Agent ${VAR} references should resolve against the environment's declared keys
12
+
13
+ ## Applies to
14
+
15
+ - [Agent](/types/Agent.md)
16
+ - [Environment](/types/Environment.md)
@@ -0,0 +1,16 @@
1
+ ---
2
+ type: post-synth-check
3
+ title: FTN014
4
+ description: Vault keys shadowing a declared Environment key should be visible in review
5
+ id: FTN014
6
+ severity: error
7
+ category: post-synth
8
+ lexicon: fountain
9
+ docs: https://intentius.io/chant/lexicons/fountain/rules/
10
+ ---
11
+ Vault keys shadowing a declared Environment key should be visible in review
12
+
13
+ ## Applies to
14
+
15
+ - [Environment](/types/Environment.md)
16
+ - [Vault](/types/Vault.md)
@@ -0,0 +1,15 @@
1
+ ---
2
+ type: post-synth-check
3
+ title: FTN015
4
+ description: Secret-shaped MCP env keys must be ${VAR} references, not literals
5
+ id: FTN015
6
+ severity: error
7
+ category: post-synth
8
+ lexicon: fountain
9
+ docs: https://intentius.io/chant/lexicons/fountain/rules/
10
+ ---
11
+ Secret-shaped MCP env keys must be ${VAR} references, not literals
12
+
13
+ ## Applies to
14
+
15
+ - [Agent](/types/Agent.md)
@@ -0,0 +1,15 @@
1
+ ---
2
+ type: post-synth-check
3
+ title: FTN016
4
+ description: Agent runtime must be a known runtime and model canonical provider/model_id
5
+ id: FTN016
6
+ severity: error
7
+ category: post-synth
8
+ lexicon: fountain
9
+ docs: https://intentius.io/chant/lexicons/fountain/rules/
10
+ ---
11
+ Agent runtime must be a known runtime and model canonical provider/model_id
12
+
13
+ ## Applies to
14
+
15
+ - [Agent](/types/Agent.md)
@@ -0,0 +1,11 @@
1
+ ---
2
+ type: post-synth-check
3
+ title: FTN017
4
+ description: Two declarations of the same kind must not resolve to the same fountain name
5
+ id: FTN017
6
+ severity: error
7
+ category: post-synth
8
+ lexicon: fountain
9
+ docs: https://intentius.io/chant/lexicons/fountain/rules/
10
+ ---
11
+ Two declarations of the same kind must not resolve to the same fountain name
@@ -0,0 +1,29 @@
1
+ ---
2
+ type: resource-type
3
+ title: Agent
4
+ description: fountain resource type Fountain::V1::Agent
5
+ name: Agent
6
+ lexicon: fountain
7
+ resource_type: Fountain::V1::Agent
8
+ ---
9
+ `Fountain::V1::Agent`, a resource type of the fountain lexicon.
10
+
11
+ ## Properties
12
+
13
+ - `model` (`string`, required)
14
+ - `name` (`string`, required)
15
+ - `runtime` (`"claude" | "codex" | "gemini" | "opencode"`, required)
16
+ - `allowed_vault_ids` (`string[]`, optional): Vaults a conversation may attach to this agent. null (default) allows any vault the tenant owns; an empty list forbids attaching any vault; a non-empty list is an allowlist.
17
+ - `description` (`string`, optional)
18
+ - `environment_id` (`string`, optional)
19
+ - `mcp_servers` (`Record<string, unknown>`, optional)
20
+ - `metadata` (`Record<string, unknown>`, optional)
21
+ - `skills` (`Record<string, unknown>[]`, optional): Each entry is either inline (`{name, content}` — full SKILL.md text written to the sprite) or github (`{source, ref?, name?}` — installed on the sprite via the skills.sh CLI, optionally pinned to a tag/branch/sha via `ref`). Exactly one of `content` or `source` must be set on each entry.
22
+ - `system` (`string`, optional)
23
+
24
+ ## Governed by
25
+
26
+ - [FTN001](/rules/FTN001.md): no secret literals in fountain resource declarations.
27
+ - [FTN013](/rules/FTN013.md): Agent ${VAR} references should resolve against the environment's declared keys
28
+ - [FTN015](/rules/FTN015.md): Secret-shaped MCP env keys must be ${VAR} references, not literals
29
+ - [FTN016](/rules/FTN016.md): Agent runtime must be a known runtime and model canonical provider/model_id
@@ -0,0 +1,29 @@
1
+ ---
2
+ type: resource-type
3
+ title: Environment
4
+ description: fountain resource type Fountain::V1::Environment
5
+ name: Environment
6
+ lexicon: fountain
7
+ resource_type: Fountain::V1::Environment
8
+ ---
9
+ `Fountain::V1::Environment`, a resource type of the fountain lexicon.
10
+
11
+ ## Properties
12
+
13
+ - `name` (`string`, required)
14
+ - `env_vars` (`Record<string, string>`, optional)
15
+ - `metadata` (`Record<string, unknown>`, optional)
16
+ - `networking_config` (`Record<string, unknown>`, optional): Refines networking_type: limited. allowed_hosts is the only key honored today; unknown keys are ignored. Under limited, egress is restricted to the allowlisted domains. With no allowed_hosts (or an empty list), the sandbox denies all egress by default — this is a deny-all, not an allow-all.
17
+ - `networking_type` (`"limited" | "unrestricted"`, optional)
18
+ - `packages` (`Record<string, unknown>`, optional)
19
+ - `repositories` (`Repository[]`, optional)
20
+ - `setup_script` (`string`, optional)
21
+
22
+ ## Governed by
23
+
24
+ - [FTN001](/rules/FTN001.md): no secret literals in fountain resource declarations.
25
+ - [FTN010](/rules/FTN010.md): Environment declarations must set networking_type explicitly
26
+ - [FTN011](/rules/FTN011.md): Environments should prefer networking_type: limited over unrestricted
27
+ - [FTN012](/rules/FTN012.md): Environment env_vars must not carry cloud-credential-shaped keys or values
28
+ - [FTN013](/rules/FTN013.md): Agent ${VAR} references should resolve against the environment's declared keys
29
+ - [FTN014](/rules/FTN014.md): Vault keys shadowing a declared Environment key should be visible in review
@@ -0,0 +1,20 @@
1
+ ---
2
+ type: resource-type
3
+ title: Vault
4
+ description: fountain resource type Fountain::V1::Vault
5
+ name: Vault
6
+ lexicon: fountain
7
+ resource_type: Fountain::V1::Vault
8
+ ---
9
+ `Fountain::V1::Vault`, a resource type of the fountain lexicon.
10
+
11
+ ## Properties
12
+
13
+ - `name` (`string`, required)
14
+ - `description` (`string`, optional)
15
+ - `metadata` (`Record<string, unknown>`, optional)
16
+
17
+ ## Governed by
18
+
19
+ - [FTN001](/rules/FTN001.md): no secret literals in fountain resource declarations.
20
+ - [FTN014](/rules/FTN014.md): Vault keys shadowing a declared Environment key should be visible in review
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@intentius/chant-lexicon-fountain",
3
- "version": "0.41.19",
3
+ "version": "0.42.1",
4
4
  "type": "module",
5
5
  "description": "Fountain lexicon for chant — sandboxed agent environments, vaults, and agents as typed estate",
6
6
  "license": "Apache-2.0",
@@ -50,7 +50,7 @@
50
50
  "bundle": "tsx src/package-cli.ts"
51
51
  },
52
52
  "peerDependencies": {
53
- "@intentius/chant": "^0.41.19",
53
+ "@intentius/chant": "^0.42.1",
54
54
  "typescript": "^5.9.3"
55
55
  },
56
56
  "devDependencies": {