caplets 0.2.0 → 0.3.0
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/README.md +45 -4
- package/dist/index.js +8099 -317
- package/package.json +3 -1
- package/schemas/caplet.schema.json +195 -0
- package/schemas/caplets-config.schema.json +11 -3
package/README.md
CHANGED
|
@@ -109,6 +109,47 @@ The optional `$schema` field points editors at the generated JSON Schema in
|
|
|
109
109
|
[`schemas/caplets-config.schema.json`](schemas/caplets-config.schema.json). CI verifies that
|
|
110
110
|
the committed schema stays in sync with the Zod config validator.
|
|
111
111
|
|
|
112
|
+
### Caplet Files
|
|
113
|
+
|
|
114
|
+
For richer skill-like cards, add Markdown Caplet files beside `config.json`. Every Caplet
|
|
115
|
+
file must include an `mcpServer` backend; serverless Caplets are intentionally out of
|
|
116
|
+
scope.
|
|
117
|
+
|
|
118
|
+
Top-level files derive the Caplet ID from the filename:
|
|
119
|
+
|
|
120
|
+
```md
|
|
121
|
+
---
|
|
122
|
+
$schema: https://raw.githubusercontent.com/spiritledsoftware/caplets/main/schemas/caplet.schema.json
|
|
123
|
+
name: GitHub
|
|
124
|
+
description: Interact with GitHub repositories, issues, and pull requests.
|
|
125
|
+
tags:
|
|
126
|
+
- code
|
|
127
|
+
- review
|
|
128
|
+
mcpServer:
|
|
129
|
+
command: npx
|
|
130
|
+
args: ["-y", "github-mcp-server"]
|
|
131
|
+
---
|
|
132
|
+
|
|
133
|
+
# GitHub
|
|
134
|
+
|
|
135
|
+
Use this Caplet for repository, issue, pull request, and code review workflows.
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
That file is exposed as the `github` Caplet. Directory-style Caplets use
|
|
139
|
+
`linear/CAPLET.md`, which is exposed as `linear`; sibling files can be referenced with
|
|
140
|
+
normal Markdown links from `CAPLET.md`.
|
|
141
|
+
|
|
142
|
+
Caplets always loads user Caplet files from `~/.caplets`. Project `./.caplets/config.json`
|
|
143
|
+
is still loaded as project config, but project Markdown Caplet files are executable
|
|
144
|
+
configuration and are ignored unless explicitly trusted:
|
|
145
|
+
|
|
146
|
+
```sh
|
|
147
|
+
CAPLETS_TRUST_PROJECT_CAPLETS=1 caplets serve
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
Later sources override earlier ones in this order: user `config.json`, user Caplet files,
|
|
151
|
+
project `config.json`, and, only when trusted, project Caplet files.
|
|
152
|
+
|
|
112
153
|
`caplets init` refuses to overwrite an existing config. To intentionally replace the file:
|
|
113
154
|
|
|
114
155
|
```sh
|
|
@@ -236,10 +277,10 @@ starts the MCP server. `serve` is explicit and recommended for clarity.
|
|
|
236
277
|
|
|
237
278
|
## How Agents Use It
|
|
238
279
|
|
|
239
|
-
Caplets initially exposes one MCP tool per enabled
|
|
280
|
+
Caplets initially exposes one MCP tool per enabled Caplet. If the config has `filesystem`
|
|
240
281
|
and `docs`, the client sees two top-level tools: `filesystem` and `docs`.
|
|
241
282
|
|
|
242
|
-
Each generated
|
|
283
|
+
Each generated Caplet tool accepts an `operation`:
|
|
243
284
|
|
|
244
285
|
```json
|
|
245
286
|
{
|
|
@@ -280,8 +321,8 @@ Call one exact downstream tool:
|
|
|
280
321
|
|
|
281
322
|
Available operations:
|
|
282
323
|
|
|
283
|
-
- `
|
|
284
|
-
- `
|
|
324
|
+
- `get_caplet`: return the configured capability card without starting the downstream server.
|
|
325
|
+
- `check_mcp_server`: start or connect to the downstream server and verify its tool list.
|
|
285
326
|
- `list_tools`: return compact downstream tool metadata.
|
|
286
327
|
- `search_tools`: search downstream tool names and descriptions within this server.
|
|
287
328
|
- `get_tool`: return full metadata for one exact downstream tool.
|