Swift Server Skills plugin
Skills for server-side Swift and the swift-server-lint linter: Swift NIO, Hummingbird, Postgres, concurrency and a lint hook.
- 64 ★ on the repository
- Last commit
Extended access
Why this level
- The hook runs a local linter after the build and may block the agent from continuing.
Install
- Works in
Manual install
git clone https://github.com/wendylabsinc/claude-skills.gitThen `ln -s "$(pwd)/skills" ~/.claude/skills`; build the linter with `swift build` in `skills/swift-server-lint`.
Access and checks
How we reviewExtended accessThe tool runs code or makes network calls and only reads external data.
- The hook runs a local linter after the build and may block the agent from continuing.
This is third-party code. Review the repository files before installing.
What it does
Swift Server Skills bundles skills for server-side Swift and the `swift-server-lint` linter. The skills cover general Swift practice, concurrency, Swift NIO, the Hummingbird web framework, a Postgres driver, Valkey, database driver and library design, GitHub Actions, pull request practice and working with Linear. Some skills belong to the Wendy device platform: certificates, updates, self-hosting and security. The author explains the technique: on spotting a Claude mistake the reason and an example go into a skill and the rule is then encoded in the linter so it applies regardless of the model's context. A PostToolUse hook runs the linter after `swift build` and blocks continuing until the findings are fixed.
Who it is for. Server-side Swift developers on Claude Code for whom prompts are not enough and who need automatic checks of team rules.
Good fit when
- The model writes Swift NIO code with a common mistake and the rule must be fixed in place.
- A linter runs automatically after every build and the agent fixes findings.
- A database driver or library is designed using the author's general advice.
- An agent migrates a project to Swift 6 and deals with concurrency.
- A Hummingbird app needs Postgres and Valkey connected.
Not a fit when
- The project is not Swift or not server-side.
- A style check is needed without building Swift, since the linter is built by the package manager.
- The team does not want to connect PostToolUse hooks.
Example request
Write a Hummingbird handler with a Postgres query following the swift-nio and postgres-nio skills, then build the project and fix the linter findings.Limitations
The linter must be built with `swift build` in `skills/swift-server-lint`, so Swift and build time are needed. The hook and the permission for running the linter are set up by hand in `~/.claude/settings.json` and `.claude/settings.local.json`, and the hook script needs `jq`. Some skills are tied to the Wendy platform and useless outside it. The skills reflect one author's view and the linter rules mirror those decisions. The repository includes quality evaluation tasks that run in Docker.
How to disable. Remove the `~/.claude/skills` link created during installation, and the `~/.claude/hooks/swift-server-lint.sh` script along with the hook entry in `settings.json`.
FAQ
What is the author's technique?
Read generated code, articulate the reason for a mistake, add the rule with an example to a skill and encode it in the linter so it works outside the model's context.
How does the hook work?
The script reads the Bash call through `jq`, and when the command contains `swift build` it runs the linter. On findings it prints them and returns a block decision.
Is permission needed for the linter?
Yes, add `Bash(.build/debug/swift-server-lint:*)` to `permissions.allow` in `.claude/settings.local.json`, or Claude will ask each time.
What about Xcode?
There is no native extension: run `claude` in a terminal beside Xcode. In VS Code the Claude Code extension shares the same settings.
How to install skills one by one?
The `marketplace.json` file describes separate plugins, for example `swift` and `swift-concurrency`, with topics and keywords.
Discussion
No questions or reviews yet.
Related
PluginsA set of 14 skills for Java Spring Boot, from requirements analysis and code generation to tests, review and Docker deployment.
Hundreds of per-provider skills teach an agent to receive webhooks, verify signatures and handle events, with code examples.
A skill for Claude Code and Codex on direct-style Scala: Ox structured concurrency, Tapir, error handling and configuration.
Six skills that teach an agent to write Streamling plugins in Rust: sources, sinks, transforms and SQL functions.
Three backend skills for agents that guard access, data and schema migrations: 2 of 150 runs had critical mistakes instead of 25.
The RubyLLM skill and plugin help an agent write chats, tools, MCP and structured output in Ruby and Rails applications
README in short
The README explains the feedback method, skill installation, linter build and the hook. Quality evaluation tasks on concrete Swift assignments sit alongside.