Skip to content

Commit cf66b4b

Browse files
committed
Fix tests and makefile
1 parent 15296c1 commit cf66b4b

6 files changed

Lines changed: 25 additions & 179 deletions

File tree

.codex-plugin/plugin.json

Lines changed: 0 additions & 32 deletions
This file was deleted.

LICENSE

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
The MIT License
2+
3+
Copyright (c) 2026 Coder Technologies Inc.
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy of
6+
this software and associated documentation files (the "Software"), to deal in
7+
the Software without restriction, including without limitation the rights to
8+
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
9+
the Software, and to permit persons to whom the Software is furnished to do so,
10+
subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
17+
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
18+
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
19+
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
20+
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Makefile

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,3 @@
1-
# Repo-level developer entry points. Defers to scripts/lint.sh and
2-
# scripts/fmt.sh so the same logic runs locally and in CI without
3-
# duplication.
4-
51
.PHONY: help lint fmt fmt-check test test-claude test-codex
62

73
help:
@@ -25,7 +21,7 @@ fmt-check:
2521
test: test-claude test-codex
2622

2723
test-claude:
28-
@bash test/run.sh
24+
@bash test/claude.sh
2925

3026
test-codex:
31-
@bash test/run-codex.sh
27+
@bash test/codex.sh

README.md

Lines changed: 3 additions & 141 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ Skills for Claude Code, Codex, Cursor, and other coding agents to install, confi
99
**npx skills**:
1010

1111
```sh
12-
npx skills add coder/skills
12+
npx skills add coder/skills --global
1313
```
1414

1515
**Claude Code**:
@@ -20,146 +20,8 @@ npx skills add coder/skills
2020
/reload-plugins
2121
```
2222

23-
**Codex**:
24-
25-
```sh
26-
codex plugin marketplace add coder/skills
27-
codex plugin install coder@coder-skills
28-
```
29-
30-
31-
### `npx skills` (recommended)
32-
33-
# user-global: drops it in ~/.claude/skills, ~/.codex/skills, ~/.cursor/skills, ...
34-
npx skills add coder/skills@setup --global
35-
36-
# install only for a specific agent
37-
npx skills add coder/skills@setup --agent codex
38-
npx skills add coder/skills@setup --agent claude-code
39-
npx skills add coder/skills@setup --agent cursor
40-
```
41-
42-
Once installed, the skill activates automatically when you ask the
43-
agent to install or set up Coder. There is no slash command; just
44-
say what you want ("set up Coder locally", "deploy Coder behind
45-
HTTPS", "stand up Coder on Kubernetes") and the agent picks the
46-
skill from its description.
47-
48-
### Claude Code (native plugin marketplace)
49-
50-
Claude Code can also load this repo as a [plugin
51-
marketplace](https://docs.claude.com/en/docs/claude-code/plugins)
52-
directly:
53-
54-
```text
55-
/plugin marketplace add coder/skills
56-
/plugin install coder@coder-skills
57-
```
58-
59-
If the install doesn't take effect immediately, run
60-
`/reload-plugins` and try again.
61-
62-
For local development, point the marketplace at a checkout:
63-
64-
```text
65-
/plugin marketplace add /path/to/skills
66-
```
67-
68-
In headless mode (`claude -p`), use `--plugin-dir` instead:
69-
70-
```sh
71-
claude -p \
72-
--plugin-dir /path/to/skills \
73-
--permission-mode bypassPermissions \
74-
"Use the setup skill to install Coder via Docker compose, \
75-
bootstrap an admin user, push the docker starter template, and \
76-
create one workspace named demo."
77-
```
78-
79-
`--permission-mode bypassPermissions` is required because the skill
80-
runs `curl | sh`, starts background processes, and writes config
81-
files. Only use it on a sandboxed host.
82-
83-
### Codex (native plugin marketplace)
84-
85-
The Codex CLI has its own plugin marketplace command. Same source:
86-
87-
```sh
88-
codex plugin marketplace add coder/skills
89-
```
90-
91-
Codex auto-discovers any skill placed under `$CODEX_HOME/skills`
92-
(default `~/.codex/skills`), so the `npx skills add coder/skills
93-
--agent codex` path above works without any extra step.
94-
95-
## Run a skill headlessly
96-
97-
Two test harnesses ship with the repo, one per CLI. Both spin a
98-
real Coder server in Docker, drive the skill end-to-end, and verify
99-
the result via the Coder REST API.
100-
101-
```sh
102-
./test/run.sh # Claude Code (claude -p)
103-
./test/run-codex.sh # Codex (codex exec)
104-
```
105-
106-
See [`test/README.md`](test/README.md) for what each harness
107-
expects and how to point them at a different port or template.
108-
109-
## Develop a new skill
110-
111-
Each skill is a directory under `skills/<name>/` containing a
112-
`SKILL.md` with YAML frontmatter, plus optional `references/`,
113-
`scripts/`, and `assets/` subdirectories. The frontmatter requires:
114-
115-
```yaml
116-
---
117-
name: kebab-case-skill-name
118-
description: One sentence on what it does and exactly when to use it.
119-
---
120-
```
121-
122-
Anthropic's skill spec is at
123-
<https://github.com/anthropics/skills/tree/main/spec>. Conventions
124-
this repo follows on top of that:
125-
126-
- **Keep `description` under 1024 characters.** Codex truncates the
127-
description at that limit and drops the skill if the truncated
128-
YAML is invalid. Claude tolerates longer descriptions but does
129-
not benefit from them. Push activation triggers and exclusions
130-
into a tight 1000-char block.
131-
- **Keep `SKILL.md` lean** (target 1500 to 2500 words). Push
132-
detailed matrices, tables, and edge-case lists into
133-
`references/*.md` and lazy-load them by trigger.
134-
- **Reference files from `SKILL.md` with relative paths** so the
135-
skill works at the personal, project, or plugin level and across
136-
agents.
137-
- **Don't ship secrets, license keys, or auth tokens** in any skill
138-
artifact. Skills are public.
139-
- **Add a smoke test under `test/`** that runs the skill headlessly
140-
and verifies the externally observable result. The two existing
141-
harnesses (`test/run.sh`, `test/run-codex.sh`) are good
142-
templates.
143-
144-
## Lint and format
145-
146-
```sh
147-
make lint # shellcheck, shfmt --diff, markdownlint, jq, claude plugin validate, no-emdash, SKILL.md description-length
148-
make fmt # shfmt -w, markdownlint --fix, jq pretty-print
149-
```
150-
151-
`make lint` is what runs in CI (`.github/workflows/lint.yml`).
152-
Lint configuration lives at the repo root: `.editorconfig`,
153-
`.markdownlint-cli2.jsonc`, `.shellcheckrc`. The shfmt flags
154-
(`-i 2 -ci`) are encoded in `scripts/lint.sh` and `scripts/fmt.sh`
155-
rather than a config file because shfmt has no native config
156-
format.
157-
158-
The SKILL.md description-length check exists because Codex
159-
truncates the YAML `description` field at 1024 characters and
160-
silently drops the skill if truncation breaks the YAML. The
161-
lint catches that before it ships.
23+
After installing, the skill activates automatically when you ask an agent to install or set up Coder.
16224

16325
## License
16426

165-
To be set by the publisher. Until then, treat as "all rights reserved".
27+
[MIT](LICENSE)
File renamed without changes.
File renamed without changes.

0 commit comments

Comments
 (0)