Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
"format": "prettier --write ."
},
"devDependencies": {
"@content-collections/core": "^0.15.0",
"@content-collections/core": "^0.15.1",
"@content-collections/vite": "^0.3.0",
"@eslint/compat": "^2.1.0",
"@eslint/js": "^10.0.1",
Expand All @@ -35,7 +35,7 @@
"dotenv": "^17.4.2",
"eslint": "^10.4.0",
"eslint-config-prettier": "^10.1.8",
"eslint-plugin-svelte": "^3.17.1",
"eslint-plugin-svelte": "^3.18.0",
"globals": "^17.6.0",
"mdsvex": "^0.12.7",
"mode-watcher": "^1.1.0",
Expand All @@ -50,7 +50,7 @@
"tailwind-merge": "^3.6.0",
"tailwindcss": "^4.3.0",
"typescript": "^6.0.3",
"typescript-eslint": "^8.59.4",
"typescript-eslint": "^8.60.0",
"vite": "^8.0.14",
"zod": "^4.4.3"
}
Expand Down
282 changes: 141 additions & 141 deletions pnpm-lock.yaml

Large diffs are not rendered by default.

11 changes: 0 additions & 11 deletions src/routes/guides/claude/+page.md

This file was deleted.

72 changes: 0 additions & 72 deletions src/routes/guides/mcp/+page.md

This file was deleted.

37 changes: 0 additions & 37 deletions src/routes/guides/mistral/+page.md

This file was deleted.

80 changes: 80 additions & 0 deletions src/routes/guides/opencode/+page.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
---
title: OpenCode
description: How to use and configure OpenCode.
---

## Running OpenCode

### OpenCode in the terminal

I run OpenCode in the terminal only to configure it, e.g. to connect to LLM providers with API keys.

### OpenCode via ACP in Zed

With this option I get access to all OpenCode Go models while enjoying a polished integration with
Zed:

- Access project skills in `.agent/skills` and global skills in `~/.agent/skills`.
- Access MCP servers configured for Zed and in `~/.config/opencode/opencode.jsonc`.
- No pull request-style reviews for agent code changes.

### OpenCode models in Zed agent

With this option I can access a subset of OpenCode Go models:

- Access project skills in `.agent/skills` and global skills in `~/.agent/skills`.
- Access MCP servers configured for Zed.
- Pull-request-style reviews for agent code changes.

## OpenCode Go models

For coding I currently use these models:

- opencode-go/qwen3.7-max (default)
- opencode-go/kimi-k2.6
- opencode-go/glm-5.1

## Configuration

### Default model

```json
{
"model": "opencode-go/qwen3.7-max"
}
```

### MCP servers

Since I use OpenCode within Zed only, there is no real point configuring MCP servers for OpenCode.
It makes sense to configure MCP servers in Zed instead. For reference, two MCP server examples.

#### Railway MCP server

```json
{
"mcp": {
"railway": {
"type": "local",
"command": ["railway", "mcp"]
}
}
}
```

This requires the Railway CLI to be installed locally.

#### Context7 MCP server

```json
{
"mcp": {
"context7": {
"type": "remote",
"url": "https://mcp.context7.com/mcp"
}
}
}
```

This MCP server is a remote server.
108 changes: 28 additions & 80 deletions src/routes/guides/skills/+page.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,88 +7,36 @@ description: How to manage agentic skills.

You can install skills from [skills.sh](https://skills.sh) with the Skills CLI using
`npx skills add` and `npx skills add -g`. `npx skills` does not require anything installed locally.
Starting with Node v26, you can install the Skills CLI via Homebrew for better performance:
`brew install skills`. If you opt for this method, you do not need the `npx` prefix in all commands
listed on this page.
Starting with Node v26, you can install the Skills CLI via Homebrew: `brew install skills`. If you
opt for this method, you do not need the `npx` prefix in the commands listed on this page.

You need to be mindful that skills can be malicious. Your first instinct should be to distrust any
skill for which you cannot corroborate that it is legit. You should also always read the skill to
verify that it does not do anything fishy. There is no harm in installing a skill, but before
letting it loose on your agent, you really need to verify that it is safe to use.

Let's take the [official Svelte skills](https://svelte.dev/docs/ai/skills) as an example. On the
[Svelte skills page on skills.sh](https://skills.sh/sveltejs/ai-tools) you can double-check from
which repository the skills will be installed. Since the
[repository is managed by the Svelte team](https://skills.sh/sveltejs/ai-tools), you can be
confident that these skills are legit and you can use the command from skills.sh to install them.
skill for which you cannot verify that it is legit. You should also always read the skill to check
that it does not do anything fishy.

## Where should I install my skills?

Project-specific skills should be installed into your workspace in directory `.agents/skills` if you
want to share them with your team. When you install workspace skills into `.agents/skills`, chances
are that your agent will be able to discover them (there are notable exceptions, e.g. Claude Code).

Skills that are not project-specific (global skills) should be installed into your home directory.
For global skills, there is even less support for the `~/.agents/skills` directory, e.g. Claude Code
and the Zed agent do not read skills from this directory.

As a workaround, you can install global skills into `~/.agents/skills` and create a symbolic link to
whatever directory your agent requires:

| Agent | Symbolic link |
| ------------ | --------------------------------------------- |
| Claude Code | `ln -s ~/.agents/skills ~/.claude/skills` |
| Mistral Vibe | `ln -s ~/.agents/skills ~/.vibe/skills` |
| Zed agent | `ln -s ~/.agents/skills ~/.config/zed/skills` |

## List skills

Run

```bash
npx skills list
```

to list installed workspace skills. Run

```bash
npx skills list -g
```

to list globally installed skills.

## Update skills

Run

```bash
npx skills update
```

to update installed skills. You will be prompted if you would like to update workspace skills or
global skills.

## Remove skills

Run

```bash
npx skills remove
```

to remove a workspace skill. Run

```bash
npx skills remove -g
```

to remove a global skill.

## Skills I use

| Skill | Type | Link |
| ------------------------- | --------- | -------------------------------------------------------------------------- |
| modern-web-guidance | global | https://www.skills.sh/googlechrome/modern-web-guidance/modern-web-guidance |
| nuxt-ui | workspace | https://www.skills.sh/nuxt/ui/nuxt-ui |
| svelte-code-writer | workspace | https://www.skills.sh/sveltejs/ai-tools/svelte-code-writer |
| svelte-core-bestpractices | workspace | https://www.skills.sh/sveltejs/ai-tools/svelte-core-bestpractices |
Project-specific skills should be installed into `.agents/skills` in your project.
Non-project-specific skills should be installed into global `~/.agents/skills`. Both directories are
the default directories when using `npx skills add` and `npx skills add -g`. Many agents honor these
two standardized directories:

- Zed agent (with any supported provider)
- OpenCode via ACP in Zed (with any connected model)
- OpenCode in the terminal (with any connected model)

There are still many agents that roll their own skill directories, e.g. Claude Code. You can create
a symbolic link, e.g. `ln -s ~/.agents/skills ~/.claude/skills`, to avoid having to install skills
into multiple directories. Or you can choose to use models from non-compliant vendors only through
harnesses that support standard skill directories. I recommend using a harness that is
agent-agnostic. [Zed](/guides/zed) and [OpenCode](/guides/opencode) are great options.

## `npx skills`

| Command | Description |
| :--------------------- | :------------------------------- |
| `npx skills list` | List installed workspace skills. |
| `npx skills list -g` | List installed global skills. |
| `npx skills update` | Update installed skills. |
| `npx skills remove` | Remove a workspace skill. |
| `npx skills remove -g` | Remove a global skill. |
Loading