@passioncode-ai/passioncode 0.1.13 → 0.1.14
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/CHANGELOG.md +12 -0
- package/README.md +3 -3
- package/bin/passioncode.js +1 -1
- package/family.json +3 -3
- package/package.json +2 -2
- package/payload/.claude-plugin/marketplace.json +5 -5
- package/payload/manifest.json +13 -13
- package/payload/plugins/fabric-agent-adapter/.claude-plugin/plugin.json +1 -1
- package/payload/plugins/fabric-agent-adapter/skills/adapting-projects-to-fabric/SKILL.md +3 -3
- package/payload/plugins/fabric-agent-adapter/skills/building-fabric-services/SKILL.md +1 -1
- package/payload/plugins/fabric-agent-adapter/skills/creating-fabric-agents/SKILL.md +2 -2
- package/payload/plugins/observatory-log/.claude-plugin/plugin.json +2 -2
- package/payload/plugins/observatory-log/skills/explaining-changes/SKILL.md +2 -2
- package/payload/plugins/observatory-log/skills/handling-secrets/SKILL.md +44 -3
- package/payload/plugins/observatory-log/skills/tracking-resources/SKILL.md +2 -2
- package/payload/plugins/passioncode/.claude-plugin/plugin.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.1.14 - 2026-10-01
|
|
4
|
+
|
|
5
|
+
### Changed
|
|
6
|
+
|
|
7
|
+
- Fabric Agent Adapter 0.5.5 in the set (`family.json` pins `v0.5.5`, was `v0.5.4`): its shipped
|
|
8
|
+
docs no longer call the public Fabric Agent Contract private; no behaviour changes.
|
|
9
|
+
- Observatory Log 0.13.0 in the set (`family.json` pins Project Observatory `v0.10.0`, was
|
|
10
|
+
`v0.8.2`, which shipped plugin 0.12.3): the plugin's licence metadata is `AGPL-3.0-only OR
|
|
11
|
+
LicenseRef-PassionCode-Commercial`, and `handling-secrets` documents the new Cloudflare presets.
|
|
12
|
+
- The README, `--help`, `family.json` and `package.json` descriptions say what is true: the
|
|
13
|
+
launcher installs the set listed in `family.json`, not every PassionCode.ai skill and plugin.
|
|
14
|
+
|
|
3
15
|
## 0.1.13 - 2026-10-01
|
|
4
16
|
|
|
5
17
|
### Changed
|
package/README.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# PassionCode.ai launcher
|
|
2
2
|
|
|
3
|
-
The **PassionCode.ai launcher** (`@passioncode-ai/passioncode` on npm) installs and updates
|
|
4
|
-
PassionCode.ai
|
|
5
|
-
organization's working rules — for Claude Code and every other agent on your machine, as one set.
|
|
3
|
+
The **PassionCode.ai launcher** (`@passioncode-ai/passioncode` on npm) installs and updates the
|
|
4
|
+
PassionCode.ai skills and plugins listed in [`family.json`](family.json) — the Fabric Agent Adapter,
|
|
5
|
+
Observatory Log and the organization's working rules — for Claude Code and every other agent on your machine, as one set.
|
|
6
6
|
It is how a teammate's agent gets the tools that build for Fabric, PassionCode.ai's CEO AI agent,
|
|
7
7
|
and it works on its own: no Fabric install, no account, no key.
|
|
8
8
|
|
package/bin/passioncode.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
'use strict';
|
|
3
3
|
const L = require('../lib/launcher');
|
|
4
4
|
|
|
5
|
-
const HELP = `passioncode —
|
|
5
|
+
const HELP = `passioncode — the PassionCode.ai skill set (family.json), for every agent on this machine
|
|
6
6
|
|
|
7
7
|
npx @passioncode-ai/passioncode@latest update [--dry-run] [--json] install or update the whole set
|
|
8
8
|
npx @passioncode-ai/passioncode@latest status [--json] what is installed where
|
package/family.json
CHANGED
|
@@ -2,13 +2,13 @@
|
|
|
2
2
|
"name": "passioncode",
|
|
3
3
|
"owner": "passioncode-ai",
|
|
4
4
|
"displayName": "PassionCode.ai",
|
|
5
|
-
"description": "
|
|
5
|
+
"description": "The PassionCode.ai agent skills listed in this set, for Claude Code and every other agent on the machine, updated as one set.",
|
|
6
6
|
"members": [
|
|
7
7
|
{
|
|
8
8
|
"name": "fabric-agent-adapter",
|
|
9
9
|
"displayName": "Fabric Agent Adapter",
|
|
10
10
|
"repo": "passioncode-ai/fabric-agent-adapter",
|
|
11
|
-
"ref": "v0.5.
|
|
11
|
+
"ref": "v0.5.5",
|
|
12
12
|
"kind": "plugin",
|
|
13
13
|
"path": "plugins/fabric-agent-adapter",
|
|
14
14
|
"legacyPluginIds": [
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
"name": "observatory-log",
|
|
23
23
|
"displayName": "Observatory Log",
|
|
24
24
|
"repo": "passioncode-ai/project-observatory-dashboard",
|
|
25
|
-
"ref": "v0.
|
|
25
|
+
"ref": "v0.10.0",
|
|
26
26
|
"kind": "plugin",
|
|
27
27
|
"path": "observatory/engine/skill/plugins/observatory-log",
|
|
28
28
|
"legacyPluginIds": [
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@passioncode-ai/passioncode",
|
|
3
|
-
"version": "0.1.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "0.1.14",
|
|
4
|
+
"description": "The PassionCode.ai agent skill set — Fabric Agent Adapter, Observatory Log and the organisation's working rules — for Claude Code and every other agent on the machine, updated as one set.",
|
|
5
5
|
"bin": {
|
|
6
6
|
"passioncode": "bin/passioncode.js"
|
|
7
7
|
},
|
|
@@ -5,13 +5,13 @@
|
|
|
5
5
|
"name": "PassionCode.ai",
|
|
6
6
|
"url": "https://passioncode.ai/"
|
|
7
7
|
},
|
|
8
|
-
"description": "
|
|
8
|
+
"description": "The PassionCode.ai agent skills listed in this set, for Claude Code and every other agent on the machine, updated as one set.",
|
|
9
9
|
"plugins": [
|
|
10
10
|
{
|
|
11
11
|
"name": "fabric-agent-adapter",
|
|
12
12
|
"displayName": "Fabric Agent Adapter",
|
|
13
13
|
"source": "./plugins/fabric-agent-adapter",
|
|
14
|
-
"version": "0.5.
|
|
14
|
+
"version": "0.5.5",
|
|
15
15
|
"description": "Create new Fabric-compatible agents, build them as always-alive local services with dashboards (fabric-service/0.1), and adapt existing projects to the Fabric Agent Contract through evidence-backed MCP, A2A, or local-runner provider bundles.",
|
|
16
16
|
"author": {
|
|
17
17
|
"name": "PassionCode.ai",
|
|
@@ -23,19 +23,19 @@
|
|
|
23
23
|
"name": "observatory-log",
|
|
24
24
|
"displayName": "Observatory Log",
|
|
25
25
|
"source": "./plugins/observatory-log",
|
|
26
|
-
"version": "0.
|
|
26
|
+
"version": "0.13.0",
|
|
27
27
|
"description": "Records what changed in a watched project at the end of every turn, and asks for the one thing a diff cannot contain: why.",
|
|
28
28
|
"author": {
|
|
29
29
|
"name": "PassionCode.ai",
|
|
30
30
|
"url": "https://passioncode.ai/"
|
|
31
31
|
},
|
|
32
|
-
"license": "
|
|
32
|
+
"license": "AGPL-3.0-only OR LicenseRef-PassionCode-Commercial"
|
|
33
33
|
},
|
|
34
34
|
{
|
|
35
35
|
"name": "passioncode",
|
|
36
36
|
"displayName": "PassionCode.ai",
|
|
37
37
|
"source": "./plugins/passioncode",
|
|
38
|
-
"version": "0.1.
|
|
38
|
+
"version": "0.1.14",
|
|
39
39
|
"description": "The organisation's working rules for every contributor's agent (working-in-passioncode), and a once-a-day check that keeps the PassionCode.ai set current.",
|
|
40
40
|
"author": {
|
|
41
41
|
"name": "PassionCode.ai",
|
package/payload/manifest.json
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"family": "passioncode",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.14",
|
|
4
4
|
"release": true,
|
|
5
5
|
"members": [
|
|
6
6
|
{
|
|
7
7
|
"name": "fabric-agent-adapter",
|
|
8
8
|
"displayName": "Fabric Agent Adapter",
|
|
9
9
|
"repo": "passioncode-ai/fabric-agent-adapter",
|
|
10
|
-
"ref": "v0.5.
|
|
11
|
-
"commit": "
|
|
12
|
-
"version": "0.5.
|
|
10
|
+
"ref": "v0.5.5",
|
|
11
|
+
"commit": "f302123b97b0c4aaf2b447f6054b583b62b3caf3",
|
|
12
|
+
"version": "0.5.5",
|
|
13
13
|
"via": "clone of https://***@github.com/passioncode-ai/fabric-agent-adapter.git",
|
|
14
14
|
"skills": [
|
|
15
15
|
"adapting-projects-to-fabric",
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
"legacyMarketplaces": [
|
|
23
23
|
"fabric-agent-adapter"
|
|
24
24
|
],
|
|
25
|
-
"contentHash": "sha256:
|
|
25
|
+
"contentHash": "sha256:6e4ba6f36e9d2f62a621a1dee0d0feb5532c7e959acdf4bfa5c8edfa82304711",
|
|
26
26
|
"description": "Create new Fabric-compatible agents, build them as always-alive local services with dashboards (fabric-service/0.1), and adapt existing projects to the Fabric Agent Contract through evidence-backed MCP, A2A, or local-runner provider bundles.",
|
|
27
27
|
"author": {
|
|
28
28
|
"name": "PassionCode.ai",
|
|
@@ -34,9 +34,9 @@
|
|
|
34
34
|
"name": "observatory-log",
|
|
35
35
|
"displayName": "Observatory Log",
|
|
36
36
|
"repo": "passioncode-ai/project-observatory-dashboard",
|
|
37
|
-
"ref": "v0.
|
|
38
|
-
"commit": "
|
|
39
|
-
"version": "0.
|
|
37
|
+
"ref": "v0.10.0",
|
|
38
|
+
"commit": "e1e0110f6618b9541f3e204a548c283005cb6fa9",
|
|
39
|
+
"version": "0.13.0",
|
|
40
40
|
"via": "clone of https://***@github.com/passioncode-ai/project-observatory-dashboard.git",
|
|
41
41
|
"skills": [
|
|
42
42
|
"explaining-changes",
|
|
@@ -49,28 +49,28 @@
|
|
|
49
49
|
"legacyMarketplaces": [
|
|
50
50
|
"observatory-log"
|
|
51
51
|
],
|
|
52
|
-
"contentHash": "sha256:
|
|
52
|
+
"contentHash": "sha256:1514d04e995ecd71df0e0518787d76c9320b02f8174824d08c958846b860fd42",
|
|
53
53
|
"description": "Records what changed in a watched project at the end of every turn, and asks for the one thing a diff cannot contain: why.",
|
|
54
54
|
"author": {
|
|
55
55
|
"name": "PassionCode.ai",
|
|
56
56
|
"url": "https://passioncode.ai/"
|
|
57
57
|
},
|
|
58
|
-
"license": "
|
|
58
|
+
"license": "AGPL-3.0-only OR LicenseRef-PassionCode-Commercial"
|
|
59
59
|
},
|
|
60
60
|
{
|
|
61
61
|
"name": "passioncode",
|
|
62
62
|
"displayName": "PassionCode.ai",
|
|
63
63
|
"repo": "passioncode-ai/passioncode",
|
|
64
|
-
"ref": "v0.1.
|
|
64
|
+
"ref": "v0.1.14",
|
|
65
65
|
"commit": null,
|
|
66
|
-
"version": "0.1.
|
|
66
|
+
"version": "0.1.14",
|
|
67
67
|
"via": "this repository",
|
|
68
68
|
"skills": [
|
|
69
69
|
"working-in-passioncode"
|
|
70
70
|
],
|
|
71
71
|
"legacyPluginIds": [],
|
|
72
72
|
"legacyMarketplaces": [],
|
|
73
|
-
"contentHash": "sha256:
|
|
73
|
+
"contentHash": "sha256:a09752a2968ea3bd192898fe28642166548786a6396050f57e02f36ea9fe2742",
|
|
74
74
|
"description": "The organisation's working rules for every contributor's agent (working-in-passioncode), and a once-a-day check that keeps the PassionCode.ai set current.",
|
|
75
75
|
"author": {
|
|
76
76
|
"name": "PassionCode.ai",
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"name": "fabric-agent-adapter",
|
|
4
4
|
"displayName": "Fabric Agent Adapter",
|
|
5
5
|
"description": "Create new Fabric-compatible agents, build them as always-alive local services with dashboards (fabric-service/0.1), and adapt existing projects to the Fabric Agent Contract through evidence-backed MCP, A2A, or local-runner provider bundles.",
|
|
6
|
-
"version": "0.5.
|
|
6
|
+
"version": "0.5.5",
|
|
7
7
|
"author": {
|
|
8
8
|
"name": "PassionCode.ai",
|
|
9
9
|
"url": "https://passioncode.ai/"
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
name: adapting-projects-to-fabric
|
|
3
3
|
description: Use when adapting an existing agent, MCP server, A2A peer, HTTP service, or terminal CLI to the Fabric Agent Contract—choosing MCP/A2A/local-runner, scaffolding a provider bundle, or checking Fabric compatibility; also for «подключить проект к Fabric» or «сделать агента совместимым с Fabric». NOT for building the Fabric host/orchestrator, configuring an MCP client, or a brand-new agent — that is creating-fabric-agents.
|
|
4
4
|
license: AGPL-3.0-only OR LicenseRef-PassionCode-Commercial
|
|
5
|
-
compatibility: Requires filesystem access and Python 3.9+. Exact schema checks additionally need git, Node.js, pnpm, and the pinned
|
|
5
|
+
compatibility: Requires filesystem access and Python 3.9+. Exact schema checks additionally need git, Node.js, pnpm, and the pinned fabric-agent-contract checkout (a public repository). Works without those tools in an explicitly degraded structural-check mode.
|
|
6
6
|
metadata:
|
|
7
7
|
author: PassionCode.ai
|
|
8
|
-
version: "0.5.
|
|
8
|
+
version: "0.5.5"
|
|
9
9
|
contract-version: "0.1.0"
|
|
10
10
|
contract-commit: "74d3852f122f5ca5cbc4138a201483531dfa5006"
|
|
11
11
|
---
|
|
@@ -74,7 +74,7 @@ Use exactly:
|
|
|
74
74
|
|
|
75
75
|
Read the pinned contract's guide
|
|
76
76
|
`docs/guides/connecting-compatible-agents.md`, the selected profile specification, and
|
|
77
|
-
the referenced JSON Schemas before implementing protocol details. If the
|
|
77
|
+
the referenced JSON Schemas before implementing protocol details. If the contract checkout
|
|
78
78
|
is unavailable, continue only through local structure and mark exact schema validation
|
|
79
79
|
`NOT_RUN`; do not reconstruct missing normative rules from memory.
|
|
80
80
|
|
|
@@ -15,7 +15,7 @@ license: AGPL-3.0-only OR LicenseRef-PassionCode-Commercial
|
|
|
15
15
|
compatibility: Python 3.9+ or Node.js 20+ for the kits; the probe needs Python 3.9+. launchd steps are macOS-only (Linux services use lifecycle manager none until a systemd adapter exists). No network or package install; the contract checkout is optional.
|
|
16
16
|
metadata:
|
|
17
17
|
author: PassionCode.ai
|
|
18
|
-
version: "0.5.
|
|
18
|
+
version: "0.5.5"
|
|
19
19
|
contract-version: "0.1.0"
|
|
20
20
|
extension: "fabric-service/0.1"
|
|
21
21
|
extension-commit: "74d3852f122f5ca5cbc4138a201483531dfa5006"
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
name: creating-fabric-agents
|
|
3
3
|
description: Use when designing and building a NEW agent or provider that must be Fabric-compatible from its first commit — «создай агента, совместимого с фабрикой Passion Code», «новый агент под Fabric», "create a fabric-compatible agent", "build a new Fabric provider", "fabric-ready agent from scratch". Runs the intake grill (capability, named consumer, workflow-or-agent, MCP/A2A/local-runner profile, effect declarations), distils source projects into a knowledge pack whose recorded failures become planted eval fixtures, scaffolds the pinned contract bundle, and sets the two-clock eval expectation with the conformance report. NOT for adapting an existing project (use adapting-projects-to-fabric), building the Fabric host or orchestrator, or generic agent design where Fabric compatibility is not part of the request.
|
|
4
4
|
license: AGPL-3.0-only OR LicenseRef-PassionCode-Commercial
|
|
5
|
-
compatibility: Requires filesystem access and Python 3.9+. Exact schema checks additionally need git, Node.js, pnpm, and the pinned
|
|
5
|
+
compatibility: Requires filesystem access and Python 3.9+. Exact schema checks additionally need git, Node.js, pnpm, and the pinned fabric-agent-contract checkout (a public repository). Works without those tools in an explicitly degraded structural-check mode. Ships in one plugin with adapting-projects-to-fabric, whose scripts it reuses.
|
|
6
6
|
metadata:
|
|
7
7
|
author: PassionCode.ai
|
|
8
|
-
version: "0.5.
|
|
8
|
+
version: "0.5.5"
|
|
9
9
|
contract-version: "0.1.0"
|
|
10
10
|
contract-commit: "74d3852f122f5ca5cbc4138a201483531dfa5006"
|
|
11
11
|
---
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
"name": "observatory-log",
|
|
4
4
|
"displayName": "Observatory Log",
|
|
5
5
|
"description": "Records what changed in a watched project at the end of every turn, and asks for the one thing a diff cannot contain: why.",
|
|
6
|
-
"version": "0.
|
|
7
|
-
"license": "
|
|
6
|
+
"version": "0.13.0",
|
|
7
|
+
"license": "AGPL-3.0-only OR LicenseRef-PassionCode-Commercial",
|
|
8
8
|
"author": {
|
|
9
9
|
"name": "PassionCode.ai",
|
|
10
10
|
"url": "https://passioncode.ai/"
|
|
@@ -13,9 +13,9 @@ description: >-
|
|
|
13
13
|
message, a PR description or a changelog, and NOT for changing the typed
|
|
14
14
|
registry — a registry change is `observatory_propose`, which is a different
|
|
15
15
|
decision with different evidence.
|
|
16
|
-
license:
|
|
16
|
+
license: AGPL-3.0-only OR LicenseRef-PassionCode-Commercial
|
|
17
17
|
metadata:
|
|
18
|
-
version: "0.
|
|
18
|
+
version: "0.13.0"
|
|
19
19
|
compatibility: >-
|
|
20
20
|
Requires an initialized full Project Observatory installation to persist
|
|
21
21
|
records. Uses its MCP server when available in the current host; the bundled
|
|
@@ -7,9 +7,9 @@ description: >-
|
|
|
7
7
|
Keeps credential values out of prompts and command arguments, uses named slots,
|
|
8
8
|
and records changes without copying values into reports. NOT for granting
|
|
9
9
|
provider permissions or choosing a project's authentication architecture.
|
|
10
|
-
license:
|
|
10
|
+
license: AGPL-3.0-only OR LicenseRef-PassionCode-Commercial
|
|
11
11
|
metadata:
|
|
12
|
-
version: "0.
|
|
12
|
+
version: "0.13.0"
|
|
13
13
|
compatibility: >-
|
|
14
14
|
Requires an initialized full Project Observatory installation, Python 3.11+
|
|
15
15
|
and local shell access on macOS or Linux. Provider operations additionally
|
|
@@ -29,7 +29,7 @@ names. Never ask the user to paste a credential into the conversation.
|
|
|
29
29
|
2. Select the user's initialized `OBSERVATORY_HOME`. Run
|
|
30
30
|
`python3 "$OBSERVATORY_ROOT/observatory.py" doctor`. A missing workspace
|
|
31
31
|
needs the documented onboarding before secret operations.
|
|
32
|
-
3. Run `python3 "$OBSERVATORY_ROOT/tools/skill_check.py" handling-secrets 0.
|
|
32
|
+
3. Run `python3 "$OBSERVATORY_ROOT/tools/skill_check.py" handling-secrets 0.13.0`.
|
|
33
33
|
If stale, read the installed skill once and follow its compatible commands.
|
|
34
34
|
Do not turn an unavailable version check into a retry loop.
|
|
35
35
|
4. Inspect names using `tools/use_secret.py names PROJECT` or `tools/vault.py
|
|
@@ -90,6 +90,47 @@ Zone Read and DNS Write on that zone only, verified against its records and
|
|
|
90
90
|
delivered to the vault slot on stdin; a second issue rolls the same token. Not
|
|
91
91
|
an account-wide DNS token, and never the admin token in a script.
|
|
92
92
|
|
|
93
|
+
A project whose Worker keeps data in D1 and must write it from a machine
|
|
94
|
+
(`wrangler d1 execute --remote`) gets `cloudflare.py issue --preset d1-edit
|
|
95
|
+
--account <slug> --vault <project>/<env>/<NAME>`: D1 Write on that one account,
|
|
96
|
+
verified by listing its databases, delivered on stdin; a second issue rolls the
|
|
97
|
+
same token. The result prints the account id — an account-owned token cannot
|
|
98
|
+
find its account by itself, so pass it as `CLOUDFLARE_ACCOUNT_ID`.
|
|
99
|
+
|
|
100
|
+
A project that must put and read objects in one R2 bucket (an off-site backup)
|
|
101
|
+
gets `cloudflare.py issue --preset r2-bucket --account <slug> --bucket <name>
|
|
102
|
+
[--jurisdiction eu] [--expire-days 30] --vault <project>/<env>/<PREFIX>`.
|
|
103
|
+
The door creates the bucket if it is missing and sets its lifecycle through a
|
|
104
|
+
setup token that it deletes before returning. It then grants Bucket Item Write on that
|
|
105
|
+
bucket's resource only. Before anything is delivered, the S3 pair must prove a
|
|
106
|
+
put, a get and a delete, and must be refused a bucket list. It lands in three
|
|
107
|
+
slots on stdin: `<PREFIX>_ACCESS_KEY_ID`, `<PREFIX>_SECRET_ACCESS_KEY` and
|
|
108
|
+
`<PREFIX>_ENDPOINT`. A second issue rolls the same token and keeps the key id.
|
|
109
|
+
|
|
110
|
+
An application that sends transactional email through Cloudflare Email Service
|
|
111
|
+
gets `cloudflare.py issue --preset email-send --account <slug> --vault
|
|
112
|
+
<project>/<env>/<NAME>`: Email Sending Write and Read on that one account (the
|
|
113
|
+
group exists at account level only), verified by listing its suppressions.
|
|
114
|
+
Adding an Email Routing rule in one zone — one address to a Worker — is
|
|
115
|
+
`--preset email-routing --zone <zone>`, and deploying that Worker with its KV
|
|
116
|
+
namespace is `--preset workers-edit --account <slug>`. Each is its own token in
|
|
117
|
+
its own slot. When a preset's groups are unknown, `cloudflare.py groups
|
|
118
|
+
--account <slug> --match "<words>"` lists the catalogue's names and levels,
|
|
119
|
+
read-only and without ids.
|
|
120
|
+
|
|
121
|
+
A Fabric Inbox server's own token is `--preset fabric-inbox-server --account
|
|
122
|
+
<slug> --vault <project>/<env>/<NAME>`; a token for one more account whose
|
|
123
|
+
domains that server reads is `--preset fabric-inbox-account` issued from THAT
|
|
124
|
+
account. Each carries the product's own permission list as two policies —
|
|
125
|
+
account-level groups on the account, zone-level groups (Zone Read, Email
|
|
126
|
+
Routing Rules, Zone Settings, DNS Write) on every zone of that account only —
|
|
127
|
+
is verified by listing the account's Workers, and is named after its slot.
|
|
128
|
+
The other-account token makes no storage and no sign-in there.
|
|
129
|
+
|
|
130
|
+
Reading one account's Worker logs is `--preset workers-observability-read
|
|
131
|
+
--account <slug> --vault <project>/<env>/<NAME>`: Workers Observability Read
|
|
132
|
+
only, verified by the telemetry-keys query with the new value.
|
|
133
|
+
|
|
93
134
|
By default, slots live under the private workspace's `secrets/projects/`.
|
|
94
135
|
An explicitly configured `sources.secret_store` or `OBSERVATORY_VAULT_DIR`
|
|
95
136
|
can select a separate private store. Such external stores are excluded from
|
|
@@ -13,9 +13,9 @@ description: >-
|
|
|
13
13
|
figma-use), wiring analytics or pixels (ad-tracking), provisioning the resource
|
|
14
14
|
with the provider's own tools, secrets (handling-secrets) or code changes inside
|
|
15
15
|
the repository.
|
|
16
|
-
license:
|
|
16
|
+
license: AGPL-3.0-only OR LicenseRef-PassionCode-Commercial
|
|
17
17
|
metadata:
|
|
18
|
-
version: "0.
|
|
18
|
+
version: "0.13.0"
|
|
19
19
|
compatibility: >-
|
|
20
20
|
Requires a full Project Observatory installation with organizations.json
|
|
21
21
|
configured; the observatory MCP server or its local CLI. Creating the resource
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"$schema": "https://json.schemastore.org/claude-code-plugin-manifest.json",
|
|
3
3
|
"name": "passioncode",
|
|
4
4
|
"displayName": "PassionCode.ai",
|
|
5
|
-
"version": "0.1.
|
|
5
|
+
"version": "0.1.14",
|
|
6
6
|
"description": "The organisation's working rules for every contributor's agent (working-in-passioncode), and a once-a-day check at session start that keeps the PassionCode.ai skill set current.",
|
|
7
7
|
"author": {
|
|
8
8
|
"name": "PassionCode.ai",
|