Skip to content

Commit 4055a0c

Browse files
authored
Merge branch 'main' into blob-skill
2 parents 2154b59 + a3e8846 commit 4055a0c

11 files changed

Lines changed: 204 additions & 37 deletions

File tree

.agents/plugins/marketplace.json

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
{
2+
"name": "valtown",
3+
"interface": {
4+
"displayName": "Val Town"
5+
},
6+
"plugins": [
7+
{
8+
"name": "vals",
9+
"source": {
10+
"source": "local",
11+
"path": "./plugin"
12+
},
13+
"policy": {
14+
"installation": "AVAILABLE",
15+
"authentication": "ON_USE"
16+
},
17+
"category": "Coding",
18+
"description": "Val Town MCP server + platform skills for building and deploying vals."
19+
}
20+
]
21+
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@valtown/skills": patch
3+
---
4+
5+
Version sync now updates every plugin manifest (Claude, Codex, and Cursor plugin.json plus the Cursor marketplace.json `metadata.version`), not just the Claude manifest — preventing the Codex/Cursor manifests from advertising a stale version on release.

.claude-plugin/marketplace.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"owner": { "name": "Val Town" },
44
"plugins": [
55
{
6-
"name": "vals",
6+
"name": "valtown",
77
"source": "./plugin",
88
"description": "Val Town MCP server + platform skills for building and deploying vals."
99
}

.cursor-plugin/marketplace.json

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
{
2+
"name": "valtown",
3+
"owner": {
4+
"name": "Val Town",
5+
"url": "https://val.town"
6+
},
7+
"metadata": {
8+
"description": "Val Town MCP server + platform skills for building and deploying vals.",
9+
"version": "0.1.2"
10+
},
11+
"plugins": [
12+
{
13+
"name": "valtown",
14+
"source": "./plugin",
15+
"description": "Val Town MCP server + platform skills for building and deploying vals."
16+
}
17+
]
18+
}

README.md

Lines changed: 61 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,62 @@
1-
# Claude Code plugin for Val Town
1+
# Agent plugins for Val Town
22

3-
Installs the Val Town MCP server and skills for Claude Code.
3+
Installs the Val Town MCP server and Skills for Claude Code, Codex, and Cursor.
44

5-
Contains platform guidance for building on [Val Town](https://val.town) — the
6-
single source of truth for the "how to write a val" knowledge used by Val Town's
7-
own tools (Townie, the MCP server) and by AI coding tools like Claude Code.
8-
9-
Each skill is a short markdown guide covering one platform topic (HTTP vals,
10-
cron/intervals, SQLite, email, OAuth, React UI, third-party integrations,
11-
templates).
5+
Skills are markdown files with platform guidance for building on [Val Town](https://val.town).
6+
Used by Val Town's own tools (Townie, the MCP server) and by AI coding agents.
7+
Skills include HTTP vals, crons, SQLite, email, OAuth, frontend, and API integrations.
128

139
## Install
1410

15-
Start a `claude` session, then run:
11+
Installing the plugin makes platform skills available to your agent and registers
12+
the hosted Val Town MCP server (`https://api.val.town/v3/mcp`). On first use of
13+
an MCP tool, the agent runs the OAuth flow in your browser.
14+
15+
1. [Claude Code](#claude-code)
16+
2. [Codex](#codex)
17+
3. [Cursor](#cursor)
18+
19+
### Claude Code
20+
21+
Install the Val Town plugin by running:
1622

1723
```
18-
/plugin marketplace add val-town/plugins
24+
claude plugin install valtown@claude-plugins-official
1925
```
2026

21-
Then run:
27+
### Codex
28+
29+
#### `codex` CLI
30+
31+
First, run:
2232

2333
```
24-
/plugin install vals@valtown
34+
codex plugin marketplace add val-town/plugins
2535
```
2636

27-
This makes the platform skills available to Claude and registers the hosted
28-
Val Town MCP server (`https://api.val.town/v3/mcp`). On first use of an MCP tool,
29-
Claude Code runs the OAuth flow in your browser.
37+
Then fire up `codex` and run:
38+
39+
```
40+
/plugins
41+
```
42+
43+
Search for Val Town, hit install, and it'll take you through the OAuth path.
44+
45+
#### Codex desktop app
46+
47+
1. Click "Plugins" in the sidebar
48+
2. In the dropdown that says "Built by OpenAI" click "Add more +"
49+
3. Copy-paste `https://github.com/val-town/plugins` and select "Add marketplace"
50+
51+
### Cursor
52+
53+
In Cursor, run:
54+
55+
```
56+
/add-plugin valtown
57+
```
58+
59+
Or in Cursor Settings, copy-paste `https://github.com/val-town/plugins` in the search box and select "Add to Cursor."
3060

3161
## Contributing
3262

@@ -84,3 +114,18 @@ for publishing. See their documentation for more information.
84114
- Each change in that directory will prompt the `release.yml` GitHub action
85115
to create a new release PR.
86116
- Merging a release PR will automatically publish a new version of this module.
117+
118+
### Configuration
119+
120+
#### Claude Code
121+
122+
The official Claude plugin marketplace pulls from [`.plugins/marketplace.json`](./.plugins/marketplace.json).
123+
124+
#### Codex
125+
126+
Codex reads the native marketplace at `.agents/plugins/marketplace.json` (and
127+
falls back to the Claude `.claude-plugin/marketplace.json` for compatibility).
128+
129+
#### Cursor
130+
131+
Cursor reads `.cursor-plugin/marketplace.json` and the per-plugin `plugin/.cursor-plugin/plugin.json`.

plugin/.claude-plugin/plugin.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
{
2-
"name": "vals",
2+
"name": "valtown",
33
"displayName": "Val Town",
44
"description": "Build and deploy on Val Town. Bundles the Val Town MCP server and platform skills (HTTP vals, cron/intervals, SQLite, email, OAuth, React UI, third-party integrations, templates).",
55
"version": "0.1.2",
66
"author": {
77
"name": "Val Town"
88
},
99
"homepage": "https://val.town",
10-
"repository": "https://github.com/val-town/claude",
10+
"repository": "https://github.com/val-town/plugins",
1111
"license": "MIT",
1212
"keywords": [
1313
"val-town",

plugin/.codex-plugin/plugin.json

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
{
2+
"name": "vals",
3+
"displayName": "Val Town",
4+
"version": "0.1.2",
5+
"description": "Build and deploy on Val Town. Bundles the Val Town MCP server and platform skills (HTTP vals, cron/intervals, SQLite, email, OAuth, React UI, third-party integrations, templates).",
6+
"author": { "name": "Val Town" },
7+
"homepage": "https://val.town",
8+
"repository": "https://github.com/val-town/plugins",
9+
"license": "MIT",
10+
"keywords": ["val-town", "deno", "serverless", "typescript"],
11+
"skills": "./skills/",
12+
"mcpServers": "./.mcp.json",
13+
"interface": {
14+
"displayName": "Val Town",
15+
"shortDescription": "Build and deploy on Val Town",
16+
"longDescription": "Bundles the hosted Val Town MCP server and platform skills (HTTP vals, cron/intervals, SQLite, email, OAuth, React UI, third-party integrations, templates) for building and deploying TypeScript on Val Town.",
17+
"developerName": "Val Town",
18+
"category": "Coding",
19+
"websiteURL": "https://val.town",
20+
"composerIcon": "./assets/icon.svg"
21+
}
22+
}

plugin/.cursor-plugin/plugin.json

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
{
2+
"name": "vals",
3+
"displayName": "Val Town",
4+
"version": "0.1.2",
5+
"description": "Build and deploy on Val Town. Bundles the Val Town MCP server and platform skills (HTTP vals, cron/intervals, SQLite, email, OAuth, React UI, third-party integrations, templates).",
6+
"author": {
7+
"name": "Val Town",
8+
"url": "https://val.town"
9+
},
10+
"license": "MIT",
11+
"keywords": ["val-town", "deno", "serverless", "typescript", "cursor", "mcp"],
12+
"logo": "assets/icon.svg"
13+
}

plugin/assets/icon.svg

Lines changed: 6 additions & 0 deletions
Loading

plugin/mcp.json

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
{
2+
"mcpServers": {
3+
"valtown": {
4+
"url": "https://api.val.town/v3/mcp"
5+
}
6+
}
7+
}

0 commit comments

Comments
 (0)