https://github.com/jkaninda/okapi-skills
AI Agent skills for Okapi — a modern, minimalist HTTP web framework for Go inspired by FastAPI.
https://github.com/jkaninda/okapi-skills
ai-agent-skills ai-agents okapi okapi-go okapi-skiils
Last synced: 10 days ago
JSON representation
AI Agent skills for Okapi — a modern, minimalist HTTP web framework for Go inspired by FastAPI.
- Host: GitHub
- URL: https://github.com/jkaninda/okapi-skills
- Owner: jkaninda
- License: mit
- Created: 2026-03-17T20:10:42.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2026-03-17T20:13:08.000Z (3 months ago)
- Last Synced: 2026-03-18T09:45:49.747Z (3 months ago)
- Topics: ai-agent-skills, ai-agents, okapi, okapi-go, okapi-skiils
- Homepage:
- Size: 19.5 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Okapi Skills
AI Agent skills for [Okapi](https://github.com/jkaninda/okapi) — a modern, minimalist HTTP framework for Go built for simplicity, performance, and developer experience.
## What are Skills?
Skills are focused, single-purpose reference files that AI agents (Claude Code, Cursor, Copilot, etc.) can load to understand and work with the Okapi framework. Each skill lives in its own directory with a `SKILL.md` file containing the API surface, patterns, and examples for one specific topic.
## Skills
| Skill | Description |
|-------|-------------|
| [overview](overview/) | Project structure, core types, constructors, app configuration, server lifecycle |
| [routing](routing/) | HTTP methods, path parameters, generic handlers, route groups, route methods, fallbacks |
| [route_definition](route_definition/) | Declarative `RouteDefinition` struct, bulk registration, project organization patterns |
| [request_binding](request_binding/) | Struct tag binding (JSON, query, path, header, cookie, form), validation tags, formats |
| [response](response/) | JSON/XML/YAML responses, file serving, structured responses, ResponseWriter extensions |
| [error_handling](error_handling/) | Abort methods, custom error handlers, RFC 7807 Problem Details |
| [openapi](openapi/) | Swagger UI, ReDoc, Scalar, OpenAPI 3.0 / 3.1, webhooks, OAuth flows, DocBuilder |
| [authentication](authentication/) | JWT auth, claims expression DSL, Basic auth, CORS configuration |
| [middleware](middleware/) | Built-in middleware (Logger, RequestID, BasicAuth, JWT, BodyLimit, CORS), chaining, std-lib bridge |
| [dynamic_routes](dynamic_routes/) | Runtime enable/disable of routes, groups, and docs; deprecation; hiding |
| [sse_stream](sse_stream/) | Server-Sent Events, single events, channel streaming, serializers |
| [websocket](websocket/) | WebSocket upgrade via the `okapi-ws` package, with Okapi and `net/http` |
| [http_client](http_client/) | `okapi/client` fluent HTTP client, retries, middleware, decoders |
| [testing](testing/) | TestServer, TestContext, okapitest fluent client, assertions |
| [cli](cli/) | okapicli package, flags, struct-based config, subcommands, server lifecycle hooks |
| [context](context/) | Data store, request inspection, parameters, cookies, templates, static files, TLS |
## Usage
### Claude Code
Add skills to your project by referencing them in your `CLAUDE.md`:
```markdown
Read skills from https://github.com/jkaninda/okapi-skills
```
Or clone locally and point to specific skills:
```bash
git clone https://github.com/jkaninda/okapi-skills.git skills/okapi
```
### Other AI Agents
Copy the relevant `SKILL.md` files into your project's context or documentation directory. Each file is self-contained and can be loaded independently.
## Structure
```
skills/
├── README.md # This file
├── SKILLS.md # Machine-readable index
├── overview/SKILL.md
├── routing/SKILL.md
├── route_definition/SKILL.md
├── request_binding/SKILL.md
├── response/SKILL.md
├── error_handling/SKILL.md
├── openapi/SKILL.md
├── authentication/SKILL.md
├── middleware/SKILL.md
├── dynamic_routes/SKILL.md
├── sse_stream/SKILL.md
├── websocket/SKILL.md
├── http_client/SKILL.md
├── testing/SKILL.md
├── cli/SKILL.md
└── context/SKILL.md
```
## Contributing
To add a new skill:
1. Create a directory with a descriptive name (e.g. `metrics/`)
2. Add a `SKILL.md` inside it with the API reference, types, and examples
3. Update `README.md` and `SKILLS.md` with the new entry
Keep skills focused on a single topic. Prefer code examples over prose.
## License
MIT — see the [Okapi repository](https://github.com/jkaninda/okapi) for details.