@passioncode-ai/fabric-agent-adapter 0.4.2 → 0.4.3
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 +30 -0
- package/LICENSE +151 -17
- package/README.md +11 -2
- package/SECURITY.md +2 -3
- package/bin/fabric-agent-adapter.js +1 -1
- package/package.json +4 -4
- package/plugins/fabric-agent-adapter/.claude-plugin/plugin.json +4 -4
- package/plugins/fabric-agent-adapter/skills/adapting-projects-to-fabric/SKILL.md +8 -5
- package/plugins/fabric-agent-adapter/skills/adapting-projects-to-fabric/scripts/adapt_project.py +1 -1
- package/plugins/fabric-agent-adapter/skills/building-fabric-services/SKILL.md +5 -5
- package/plugins/fabric-agent-adapter/skills/creating-fabric-agents/SKILL.md +16 -5
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,35 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.4.3 - 2026-09-29
|
|
4
|
+
|
|
5
|
+
### Changed
|
|
6
|
+
|
|
7
|
+
- **License.** The adapter is now source-available under
|
|
8
|
+
`PolyForm-Noncommercial-1.0.0 OR LicenseRef-PolyForm-Internal-Use-1.0.0`, with a
|
|
9
|
+
commercial license on request (contact@passioncode.ai). Versions up to and including
|
|
10
|
+
v0.4.2, and npm releases up to and including 0.3.1, were released under MIT and remain
|
|
11
|
+
available under it. The manifests, the three skills' `license:` and the README say the
|
|
12
|
+
same; contributions come in under `CLA.md`, which the new PR template asks for.
|
|
13
|
+
`test/validate.py` fails a tree that slips back to MIT.
|
|
14
|
+
- Author and marketplace owner are PassionCode.ai (`https://passioncode.ai/`).
|
|
15
|
+
- **Contract pin** moves from `20a818e` to `a5a2709` (fabric-agent-contract `main`), the
|
|
16
|
+
commit `building-fabric-services` already pinned. Between the two the provider
|
|
17
|
+
profiles are unchanged — only the `fabric-service/0.1` extension was added — and
|
|
18
|
+
`adapt_project.py check --contract` gives the same verdicts for an MCP, an A2A and a
|
|
19
|
+
local-runner bundle at both commits (declaration shape PASS). One pin for all three
|
|
20
|
+
skills.
|
|
21
|
+
- `creating-fabric-agents` hands the agent's own loop to `agent-orchestrator`, its
|
|
22
|
+
eval suite to `agent-evals` (agent-stack) and plugin packaging to `make-skill`;
|
|
23
|
+
`adapting-projects-to-fabric` sends wire-level MCP/A2A questions to `agent-interop`.
|
|
24
|
+
|
|
25
|
+
### Fixed
|
|
26
|
+
|
|
27
|
+
- The installer's help names the launcher by its npm org name,
|
|
28
|
+
`npx @passioncode-ai/passioncode@latest update`; the bare `passioncode` is not ours.
|
|
29
|
+
- A distributed eval named a personal agent as its example service; the
|
|
30
|
+
`building-fabric-services` evals use `example-agent`, and its description says "a
|
|
31
|
+
macOS machine" instead of naming whose.
|
|
32
|
+
|
|
3
33
|
## 0.4.2 - 2026-09-29
|
|
4
34
|
|
|
5
35
|
- Kit: `LoopbackHTTPServer`, a `ThreadingHTTPServer` whose bind asks no resolver.
|
package/LICENSE
CHANGED
|
@@ -1,22 +1,156 @@
|
|
|
1
|
-
|
|
1
|
+
Copyright (c) 2026 Siarhei Sheleh
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
This software is source-available, not open source. You may use it under
|
|
4
|
+
either of the two licenses below, at your option:
|
|
4
5
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
6
|
+
1. PolyForm Noncommercial License 1.0.0
|
|
7
|
+
SPDX: PolyForm-Noncommercial-1.0.0
|
|
8
|
+
2. PolyForm Internal Use License 1.0.0
|
|
9
|
+
SPDX: LicenseRef-PolyForm-Internal-Use-1.0.0
|
|
11
10
|
|
|
12
|
-
|
|
13
|
-
|
|
11
|
+
In short: individuals and noncommercial organisations may use, change and
|
|
12
|
+
share it for noncommercial purposes; any company may use it, and change it,
|
|
13
|
+
for its own internal operations. Distributing it commercially, or building
|
|
14
|
+
this software or its code into a product or service you provide to others,
|
|
15
|
+
needs a separate commercial license: contact@passioncode.ai.
|
|
16
|
+
This summary is not part of either license; the texts below govern.
|
|
14
17
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
18
|
+
Versions up to and including v0.4.2 of this repository (and npm releases up to and
|
|
19
|
+
including 0.3.1) were released under the MIT License; those releases remain available
|
|
20
|
+
under MIT.
|
|
22
21
|
|
|
22
|
+
Required Notice: Copyright (c) 2026 Siarhei Sheleh (https://passioncode.ai)
|
|
23
|
+
|
|
24
|
+
================================================================================
|
|
25
|
+
|
|
26
|
+
# PolyForm Noncommercial License 1.0.0
|
|
27
|
+
|
|
28
|
+
<https://polyformproject.org/licenses/noncommercial/1.0.0>
|
|
29
|
+
|
|
30
|
+
## Acceptance
|
|
31
|
+
|
|
32
|
+
In order to get any license under these terms, you must agree to them as both strict obligations and conditions to all your licenses.
|
|
33
|
+
|
|
34
|
+
## Copyright License
|
|
35
|
+
|
|
36
|
+
The licensor grants you a copyright license for the software to do everything you might do with the software that would otherwise infringe the licensor's copyright in it for any permitted purpose. However, you may only distribute the software according to [Distribution License](#distribution-license) and make changes or new works based on the software according to [Changes and New Works License](#changes-and-new-works-license).
|
|
37
|
+
|
|
38
|
+
## Distribution License
|
|
39
|
+
|
|
40
|
+
The licensor grants you an additional copyright license to distribute copies of the software. Your license to distribute covers distributing the software with changes and new works permitted by [Changes and New Works License](#changes-and-new-works-license).
|
|
41
|
+
|
|
42
|
+
## Notices
|
|
43
|
+
|
|
44
|
+
You must ensure that anyone who gets a copy of any part of the software from you also gets a copy of these terms or the URL for them above, as well as copies of any plain-text lines beginning with `Required Notice:` that the licensor provided with the software. For example:
|
|
45
|
+
|
|
46
|
+
> Required Notice: Copyright Yoyodyne, Inc. (http://example.com)
|
|
47
|
+
|
|
48
|
+
## Changes and New Works License
|
|
49
|
+
|
|
50
|
+
The licensor grants you an additional copyright license to make changes and new works based on the software for any permitted purpose.
|
|
51
|
+
|
|
52
|
+
## Patent License
|
|
53
|
+
|
|
54
|
+
The licensor grants you a patent license for the software that covers patent claims the licensor can license, or becomes able to license, that you would infringe by using the software.
|
|
55
|
+
|
|
56
|
+
## Noncommercial Purposes
|
|
57
|
+
|
|
58
|
+
Any noncommercial purpose is a permitted purpose.
|
|
59
|
+
|
|
60
|
+
## Personal Uses
|
|
61
|
+
|
|
62
|
+
Personal use for research, experiment, and testing for the benefit of public knowledge, personal study, private entertainment, hobby projects, amateur pursuits, or religious observance, without any anticipated commercial application, is use for a permitted purpose.
|
|
63
|
+
|
|
64
|
+
## Noncommercial Organizations
|
|
65
|
+
|
|
66
|
+
Use by any charitable organization, educational institution, public research organization, public safety or health organization, environmental protection organization, or government institution is use for a permitted purpose regardless of the source of funding or obligations resulting from the funding.
|
|
67
|
+
|
|
68
|
+
## Fair Use
|
|
69
|
+
|
|
70
|
+
You may have "fair use" rights for the software under the law. These terms do not limit them.
|
|
71
|
+
|
|
72
|
+
## No Other Rights
|
|
73
|
+
|
|
74
|
+
These terms do not allow you to sublicense or transfer any of your licenses to anyone else, or prevent the licensor from granting licenses to anyone else. These terms do not imply any other licenses.
|
|
75
|
+
|
|
76
|
+
## Patent Defense
|
|
77
|
+
|
|
78
|
+
If you make any written claim that the software infringes or contributes to infringement of any patent, your patent license for the software granted under these terms ends immediately. If your company makes such a claim, your patent license ends immediately for work on behalf of your company.
|
|
79
|
+
|
|
80
|
+
## Violations
|
|
81
|
+
|
|
82
|
+
The first time you are notified in writing that you have violated any of these terms, or done anything with the software not covered by your licenses, your licenses can nonetheless continue if you come into full compliance with these terms, and take practical steps to correct past violations, within 32 days of receiving notice. Otherwise, all your licenses end immediately.
|
|
83
|
+
|
|
84
|
+
## No Liability
|
|
85
|
+
|
|
86
|
+
***As far as the law allows, the software comes as is, without any warranty or condition, and the licensor will not be liable to you for any damages arising out of these terms or the use or nature of the software, under any kind of legal claim.***
|
|
87
|
+
|
|
88
|
+
## Definitions
|
|
89
|
+
|
|
90
|
+
The **licensor** is the individual or entity offering these terms, and the **software** is the software the licensor makes available under these terms.
|
|
91
|
+
|
|
92
|
+
**You** refers to the individual or entity agreeing to these terms.
|
|
93
|
+
|
|
94
|
+
**Your company** is any legal entity, sole proprietorship, or other kind of organization that you work for, plus all organizations that have control over, are under the control of, or are under common control with that organization. **Control** means ownership of substantially all the assets of an entity, or the power to direct its management and policies by vote, contract, or otherwise. Control can be direct or indirect.
|
|
95
|
+
|
|
96
|
+
**Your licenses** are all the licenses granted to you for the software under these terms.
|
|
97
|
+
|
|
98
|
+
**Use** means anything you do with the software requiring one of your licenses.
|
|
99
|
+
|
|
100
|
+
================================================================================
|
|
101
|
+
|
|
102
|
+
# PolyForm Internal Use License 1.0.0
|
|
103
|
+
|
|
104
|
+
<https://polyformproject.org/licenses/internal-use/1.0.0>
|
|
105
|
+
|
|
106
|
+
## Acceptance
|
|
107
|
+
|
|
108
|
+
In order to get any license under these terms, you must agree to them as both strict obligations and conditions to all your licenses.
|
|
109
|
+
|
|
110
|
+
## Copyright License
|
|
111
|
+
|
|
112
|
+
The licensor grants you a copyright license for the software to do everything you might do with the software that would otherwise infringe the licensor's copyright in it for any permitted purpose. However, you may only make changes or new works based on the software according to [Changes and New Works License](#changes-and-new-works-license), and you may not distribute the software.
|
|
113
|
+
|
|
114
|
+
## Changes and New Works License
|
|
115
|
+
|
|
116
|
+
The licensor grants you an additional copyright license to make changes and new works based on the software for any permitted purpose.
|
|
117
|
+
|
|
118
|
+
## Patent License
|
|
119
|
+
|
|
120
|
+
The licensor grants you a patent license for the software that covers patent claims the licensor can license, or becomes able to license, that you would infringe by using the software.
|
|
121
|
+
|
|
122
|
+
## Fair Use
|
|
123
|
+
|
|
124
|
+
You may have "fair use" rights for the software under the law. These terms do not limit them.
|
|
125
|
+
|
|
126
|
+
## Internal Business Use
|
|
127
|
+
|
|
128
|
+
Use of the software for the internal business operations of you and your company is use for a permitted purpose.
|
|
129
|
+
|
|
130
|
+
## No Other Rights
|
|
131
|
+
|
|
132
|
+
These terms do not allow you to sublicense or transfer any of your licenses to anyone else, or prevent the licensor from granting licenses to anyone else. These terms do not imply any other licenses.
|
|
133
|
+
|
|
134
|
+
## Patent Defense
|
|
135
|
+
|
|
136
|
+
If you make any written claim that the software infringes or contributes to infringement of any patent, your patent license for the software granted under these terms ends immediately. If your company makes such a claim, your patent license ends immediately for work on behalf of your company.
|
|
137
|
+
|
|
138
|
+
## Violations
|
|
139
|
+
|
|
140
|
+
The first time you are notified in writing that you have violated any of these terms, or done anything with the software not covered by your licenses, your licenses can nonetheless continue if you come into full compliance with these terms, and take practical steps to correct past violations, within 32 days of receiving notice. Otherwise, all your licenses end immediately.
|
|
141
|
+
|
|
142
|
+
## No Liability
|
|
143
|
+
|
|
144
|
+
***As far as the law allows, the software comes as is, without any warranty or condition, and the licensor will not be liable to you for any damages arising out of these terms or the use or nature of the software, under any kind of legal claim.***
|
|
145
|
+
|
|
146
|
+
## Definitions
|
|
147
|
+
|
|
148
|
+
The **licensor** is the individual or entity offering these terms, and the **software** is the software the licensor makes available under these terms.
|
|
149
|
+
|
|
150
|
+
**You** refers to the individual or entity agreeing to these terms.
|
|
151
|
+
|
|
152
|
+
**Your company** is any legal entity, sole proprietorship, or other kind of organization that you work for, plus all organizations that have control over, are under the control of, or are under common control with that organization. **Control** means ownership of substantially all the assets of an entity, or the power to direct its management and policies by vote, contract, or otherwise. Control can be direct or indirect.
|
|
153
|
+
|
|
154
|
+
**Your licenses** are all the licenses granted to you for the software under these terms.
|
|
155
|
+
|
|
156
|
+
**Use** means anything you do with the software requiring one of your licenses.
|
package/README.md
CHANGED
|
@@ -15,7 +15,7 @@ without moving the Project onto one proprietary agent runtime.
|
|
|
15
15
|
|
|
16
16
|
[](https://www.npmjs.com/package/@passioncode-ai/fabric-agent-adapter)
|
|
17
17
|
[](https://github.com/passioncode-ai/fabric-agent-adapter/actions/workflows/validate.yml)
|
|
18
|
-
[](LICENSE)
|
|
19
19
|
|
|
20
20
|
Private, portable Agent Skills for the
|
|
21
21
|
[Fabric Agent Contract](https://github.com/passioncode-ai/fabric-agent-contract):
|
|
@@ -126,7 +126,16 @@ checks copies installed elsewhere, such as `~/.agents/skills/*/SKILL.md`.
|
|
|
126
126
|
## Contract pin
|
|
127
127
|
|
|
128
128
|
- version: `0.1.0`
|
|
129
|
-
- commit: `
|
|
129
|
+
- commit: `a5a27092ba0dcc5facfbeae8b359146dfb403e9a`
|
|
130
130
|
|
|
131
131
|
The contract repository is normative. Updating the pin requires a new adapter release,
|
|
132
132
|
fixture review, and a complete validation run.
|
|
133
|
+
|
|
134
|
+
## License
|
|
135
|
+
|
|
136
|
+
Source-available under PolyForm Noncommercial or Internal Use; commercial license on
|
|
137
|
+
request (contact@passioncode.ai). SPDX:
|
|
138
|
+
`PolyForm-Noncommercial-1.0.0 OR LicenseRef-PolyForm-Internal-Use-1.0.0` — see
|
|
139
|
+
[LICENSE](LICENSE). Versions up to and including v0.4.2 (npm up to 0.3.1) were released
|
|
140
|
+
under the MIT License and remain available under it. Contributions are accepted under
|
|
141
|
+
[CLA.md](CLA.md) ([CONTRIBUTING.md](CONTRIBUTING.md)).
|
package/SECURITY.md
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
# Security
|
|
2
2
|
|
|
3
|
-
Report vulnerabilities privately to
|
|
4
|
-
|
|
5
|
-
or customer project data.
|
|
3
|
+
Report vulnerabilities privately to contact@passioncode.ai. Do not open a public issue
|
|
4
|
+
containing credentials, private provider URLs, or customer project data.
|
|
6
5
|
|
|
7
6
|
The adapter must not write secret values to manifests, fixtures, probes, logs, or command
|
|
8
7
|
arguments. Generated and external provider outputs are untrusted. Live probes must be
|
|
@@ -35,7 +35,7 @@ Claude Code (recommended):
|
|
|
35
35
|
claude plugin marketplace add ${REPO}
|
|
36
36
|
claude plugin install ${PLUGIN_ID}
|
|
37
37
|
Every PassionCode.ai skill for every agent at once:
|
|
38
|
-
npx passioncode@latest update`);
|
|
38
|
+
npx @passioncode-ai/passioncode@latest update`);
|
|
39
39
|
}
|
|
40
40
|
|
|
41
41
|
function copyDir(src, dest) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@passioncode-ai/fabric-agent-adapter",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.3",
|
|
4
4
|
"description": "Create Fabric-compatible agents, run them as always-alive local services with dashboards (fabric-service/0.1), and adapt existing projects to the Fabric Agent Contract. This package is the installer CLI.",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"test": "python3 test/validate.py && python3 -m unittest discover -s test -q && node --test test/"
|
|
@@ -23,10 +23,10 @@
|
|
|
23
23
|
],
|
|
24
24
|
"repository": "github:passioncode-ai/fabric-agent-adapter",
|
|
25
25
|
"homepage": "https://github.com/passioncode-ai/fabric-agent-adapter",
|
|
26
|
-
"license": "
|
|
26
|
+
"license": "PolyForm-Noncommercial-1.0.0 OR LicenseRef-PolyForm-Internal-Use-1.0.0",
|
|
27
27
|
"author": {
|
|
28
|
-
"name": "
|
|
29
|
-
"url": "https://
|
|
28
|
+
"name": "PassionCode.ai",
|
|
29
|
+
"url": "https://passioncode.ai/"
|
|
30
30
|
},
|
|
31
31
|
"engines": {
|
|
32
32
|
"node": ">=16"
|
|
@@ -3,14 +3,14 @@
|
|
|
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.4.
|
|
6
|
+
"version": "0.4.3",
|
|
7
7
|
"author": {
|
|
8
|
-
"name": "
|
|
9
|
-
"url": "https://
|
|
8
|
+
"name": "PassionCode.ai",
|
|
9
|
+
"url": "https://passioncode.ai/"
|
|
10
10
|
},
|
|
11
11
|
"homepage": "https://github.com/passioncode-ai/fabric-agent-adapter",
|
|
12
12
|
"repository": "https://github.com/passioncode-ai/fabric-agent-adapter",
|
|
13
|
-
"license": "
|
|
13
|
+
"license": "PolyForm-Noncommercial-1.0.0 OR LicenseRef-PolyForm-Internal-Use-1.0.0",
|
|
14
14
|
"keywords": [
|
|
15
15
|
"fabric",
|
|
16
16
|
"agent",
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
---
|
|
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
|
-
license:
|
|
4
|
+
license: PolyForm-Noncommercial-1.0.0 OR LicenseRef-PolyForm-Internal-Use-1.0.0
|
|
5
5
|
compatibility: Requires filesystem access and Python 3.9+. Exact schema checks additionally need git, Node.js, pnpm, and the pinned private fabric-agent-contract checkout. Works without those tools in an explicitly degraded structural-check mode.
|
|
6
6
|
metadata:
|
|
7
|
-
author:
|
|
8
|
-
version: "0.4.
|
|
7
|
+
author: PassionCode.ai
|
|
8
|
+
version: "0.4.3"
|
|
9
9
|
contract-version: "0.1.0"
|
|
10
|
-
contract-commit: "
|
|
10
|
+
contract-commit: "a5a27092ba0dcc5facfbeae8b359146dfb403e9a"
|
|
11
11
|
---
|
|
12
12
|
|
|
13
13
|
# Adapting projects to Fabric
|
|
@@ -22,6 +22,9 @@ Use this skill to adapt or assess a provider project. Do not use it to:
|
|
|
22
22
|
|
|
23
23
|
- design the Fabric host, registry, scheduler, admission service, or project binding runtime;
|
|
24
24
|
- add an MCP server to Claude Code, Codex, or an agent gateway;
|
|
25
|
+
- answer wire-level MCP or A2A questions (transports, sessions, auth handshakes, task
|
|
26
|
+
states on the wire) — that is `agent-interop` (agent-stack); the pinned contract stays
|
|
27
|
+
normative for what Fabric requires;
|
|
25
28
|
- design a new agent from scratch — that is the sibling skill creating-fabric-agents;
|
|
26
29
|
- claim admission merely because generated files or a valid manifest exist.
|
|
27
30
|
|
|
@@ -67,7 +70,7 @@ Use exactly:
|
|
|
67
70
|
|
|
68
71
|
- contract version `0.1.0`;
|
|
69
72
|
- repository `https://github.com/passioncode-ai/fabric-agent-contract`;
|
|
70
|
-
- commit `
|
|
73
|
+
- commit `a5a27092ba0dcc5facfbeae8b359146dfb403e9a`.
|
|
71
74
|
|
|
72
75
|
Read the pinned contract's guide
|
|
73
76
|
`docs/guides/connecting-compatible-agents.md`, the selected profile specification, and
|
package/plugins/fabric-agent-adapter/skills/adapting-projects-to-fabric/scripts/adapt_project.py
CHANGED
|
@@ -16,7 +16,7 @@ from urllib.parse import urlparse
|
|
|
16
16
|
|
|
17
17
|
CONTRACT_VERSION = "0.1.0"
|
|
18
18
|
CONTRACT_REPOSITORY = "https://github.com/passioncode-ai/fabric-agent-contract"
|
|
19
|
-
CONTRACT_COMMIT = "
|
|
19
|
+
CONTRACT_COMMIT = "a5a27092ba0dcc5facfbeae8b359146dfb403e9a"
|
|
20
20
|
MCP_REVISION = "2026-07-28"
|
|
21
21
|
A2A_VERSION = "1.0"
|
|
22
22
|
LOCAL_VERSION = "fabric-local-runner/0.1"
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: building-fabric-services
|
|
3
3
|
description: >-
|
|
4
|
-
Use when building or running an agent as a long-lived local service with a dashboard on
|
|
5
|
-
|
|
4
|
+
Use when building or running an agent as a long-lived local service with a dashboard on
|
|
5
|
+
a macOS machine — «сделай агенту дашборд», «локальный сервис агента», «дашборд должен всегда
|
|
6
6
|
работать и не плодить копии», «где агенту хранить настройки», «подключи агента к Fabric
|
|
7
7
|
Dashboards», "make this agent a local service", "always-on dashboard", "fabric-service
|
|
8
8
|
protocol", "add the well-known endpoint", "migrate a service to fabric-service". Covers the
|
|
@@ -11,11 +11,11 @@ description: >-
|
|
|
11
11
|
descriptor, the well-known document, the events feed and notifications; ships Python and Node
|
|
12
12
|
reference kits and a live conformance probe. NOT for a one-off script or cron job, a hosted
|
|
13
13
|
SaaS, the provider manifest itself (adapting-projects-to-fabric), or building Fabric Dashboards.
|
|
14
|
-
license:
|
|
14
|
+
license: PolyForm-Noncommercial-1.0.0 OR LicenseRef-PolyForm-Internal-Use-1.0.0
|
|
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
|
-
author:
|
|
18
|
-
version: "0.4.
|
|
17
|
+
author: PassionCode.ai
|
|
18
|
+
version: "0.4.3"
|
|
19
19
|
contract-version: "0.1.0"
|
|
20
20
|
extension: "fabric-service/0.1"
|
|
21
21
|
extension-commit: "a5a27092ba0dcc5facfbeae8b359146dfb403e9a"
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
---
|
|
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
|
-
license:
|
|
4
|
+
license: PolyForm-Noncommercial-1.0.0 OR LicenseRef-PolyForm-Internal-Use-1.0.0
|
|
5
5
|
compatibility: Requires filesystem access and Python 3.9+. Exact schema checks additionally need git, Node.js, pnpm, and the pinned private fabric-agent-contract checkout. 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
|
-
author:
|
|
8
|
-
version: "0.4.
|
|
7
|
+
author: PassionCode.ai
|
|
8
|
+
version: "0.4.3"
|
|
9
9
|
contract-version: "0.1.0"
|
|
10
|
-
contract-commit: "
|
|
10
|
+
contract-commit: "a5a27092ba0dcc5facfbeae8b359146dfb403e9a"
|
|
11
11
|
---
|
|
12
12
|
|
|
13
13
|
# Creating Fabric-compatible agents
|
|
@@ -30,6 +30,17 @@ Use this skill to design and build a new provider. Do not use it to:
|
|
|
30
30
|
- claim admission: the deliverable is an admission-ready provider bundle, never a
|
|
31
31
|
connected provider.
|
|
32
32
|
|
|
33
|
+
## Handing off to neighbouring skills
|
|
34
|
+
|
|
35
|
+
- The agent's own loop — tool calls, routing and fallback, memory, sub-agents — is
|
|
36
|
+
designed with `agent-orchestrator` (agent-stack).
|
|
37
|
+
- Its eval suite beyond the step-2 observables — trajectories, judges, regression
|
|
38
|
+
fixtures from traces — is built with `agent-evals` (agent-stack).
|
|
39
|
+
- Packaging the agent as an Agent Skill or Claude Code plugin goes through `make-skill`.
|
|
40
|
+
|
|
41
|
+
When one of them is not installed, do that part by hand against its own documentation
|
|
42
|
+
and say in the report which skill was missing.
|
|
43
|
+
|
|
33
44
|
## Step 0 — the intake grill
|
|
34
45
|
|
|
35
46
|
No file is created until every row has an answer. An answer of "later" fails the grill.
|
|
@@ -82,7 +93,7 @@ python3 <plugin-dir>/skills/adapting-projects-to-fabric/scripts/adapt_project.py
|
|
|
82
93
|
--schema-base <immutable-base-uri>
|
|
83
94
|
```
|
|
84
95
|
|
|
85
|
-
Pin exactly contract `0.1.0` at commit `
|
|
96
|
+
Pin exactly contract `0.1.0` at commit `a5a27092ba0dcc5facfbeae8b359146dfb403e9a` and
|
|
86
97
|
read the pinned guide before implementing protocol details. If this skill is installed
|
|
87
98
|
without its sibling, the scaffolder is absent: create the bundle by hand from the pinned
|
|
88
99
|
contract's `docs/guides/connecting-compatible-agents.md` and mark the structural check
|