Buckets:
| title: Kommandoer | |
| description: Opret brugerdefinerede kommandoer til gentagne opgaver. | |
| Brugerdefinerede kommandoer giver mulighed for at angive en prompt, du vil køre, når denne kommando udføres i TUI. | |
| ```bash frame="none" | |
| /my-command | |
| ``` | |
| Brugerdefinerede kommandoer er ud over de indbyggede kommandoer som `/init`, `/undo`, `/redo`, `/share`, `/help`. [Learn more](/docs/tui#commands). | |
| ## Oprettelse af kommandofiler | |
| Opret markdown-filer i mappen `commands/` for at definere brugerdefinerede kommandoer. | |
| Opret `.opencode/commands/test.md`: | |
| ```md title=".opencode/commands/test.md" | |
| description: Run tests with coverage | |
| agent: build | |
| model: anthropic/claude-3-5-sonnet-20241022 | |
| Run the full test suite with coverage report and show any failures. | |
| Focus on the failing tests and suggest fixes. | |
| ``` | |
| Frontmatter definerer kommandoegenskaber. Indholdet bliver skabelonen. | |
| Brug kommandoen ved at skrive `/` efterfulgt af kommandonavnet. | |
| ```bash frame="none" | |
| "/test" | |
| ``` | |
| ## Konfiguration | |
| Du kan tilføje brugerdefinerede kommandoer gennem OpenCode-konfigurationen eller ved at oprette markdown-filer i `commands/`-mappen. | |
| ### JSON | |
| Brug indstillingerne `command` i din OpenCode [config](/docs/config): | |
| ```json title="opencode.jsonc" {4-12} | |
| { | |
| "$schema": "https://opencode.ai/config.json", | |
| "command": { | |
| // This becomes the name of the command | |
| "test": { | |
| // This is the prompt that will be sent to the LLM | |
| "template": "Run the full test suite with coverage report and show any failures.\nFocus on the failing tests and suggest fixes.", | |
| // This is shown as the description in the TUI | |
| "description": "Run tests with coverage", | |
| "agent": "build", | |
| "model": "anthropic/claude-3-5-sonnet-20241022" | |
| } | |
| } | |
| } | |
| ``` | |
| Nu kan du køre denne kommando i TUI: | |
| ```bash frame="none" | |
| /test | |
| ``` | |
| ### Markdown | |
| Du kan også definere kommandoer ved hjælp af markdown-filer. Placer dem i: | |
| - Globalt: `~/.config/opencode/commands/` | |
| - Pr. projekt: `.opencode/commands/` | |
| ```markdown title="~/.config/opencode/commands/test.md" | |
| description: Run tests with coverage | |
| agent: build | |
| model: anthropic/claude-3-5-sonnet-20241022 | |
| Run the full test suite with coverage report and show any failures. | |
| Focus on the failing tests and suggest fixes. | |
| ``` | |
| Markdown-filnavnet bliver kommandonavnet. For eksempel lader `test.md` | |
| du løber: | |
| ```bash frame="none" | |
| /test | |
| ``` | |
| ## Prompt-konfiguration | |
| Spørgsmålene til de brugerdefinerede kommandoer understøtter flere specielle pladsholdere og syntaks. | |
| ### Argumenter | |
| Send argumenter til kommandoer ved hjælp af pladsholderen `$ARGUMENTS`. | |
| ```md title=".opencode/commands/component.md" | |
| description: Create a new component | |
| Create a new React component named $ARGUMENTS with TypeScript support. | |
| Include proper typing and basic structure. | |
| ``` | |
| Kør kommandoen med argumenter: | |
| ```bash frame="none" | |
| /component Button | |
| ``` | |
| Og `$ARGUMENTS` vil blive erstattet med `Button`. | |
| Du kan også få adgang til individuelle argumenter ved hjælp af positionelle parametre: | |
| - `$1` - Første argument | |
| - `$2` - Andet argument | |
| - `$3` - Tredje argument | |
| - Og så videre... | |
| For eksempel: | |
| ```md title=".opencode/commands/create-file.md" | |
| description: Create a new file with content | |
| Create a file named $1 in the directory $2 | |
| with the following content: $3 | |
| ``` | |
| Kør kommandoen: | |
| ```bash frame="none" | |
| /create-file config.json src "{ \"key\": \"value\" }" | |
| ``` | |
| Dette erstatter: | |
| - `$1` med `config.json` | |
| - `$2` med `src` | |
| - `$3` med `{ "key": "value" }` | |
| ### Shell-output | |
| Brug _!`command`_ til at injicere [bash command](/docs/tui#bash-commands) output i din prompt. | |
| For eksempel, for at oprette en brugerdefineret kommando, der analyserer testdækning: | |
| ```md title=".opencode/commands/analyze-coverage.md" | |
| description: Analyze test coverage | |
| Here are the current test results: | |
| !`npm test` | |
| Based on these results, suggest improvements to increase coverage. | |
| ``` | |
| Eller for at gennemgå de seneste ændringer: | |
| ```md title=".opencode/commands/review-changes.md" | |
| description: Review recent changes | |
| Recent git commits: | |
| !`git log --oneline -10` | |
| Review these changes and suggest any improvements. | |
| ``` | |
| Kommandoer kører i dit projekts rodmappe, og deres output bliver en del af prompten. | |
| ### Fil-referencer | |
| Inkluder filer i din kommando ved hjælp af `@` efterfulgt af filnavnet. | |
| ```md title=".opencode/commands/review-component.md" | |
| description: Review component | |
| Review the component in @src/components/Button.tsx. | |
| Check for performance issues and suggest improvements. | |
| ``` | |
| Filindholdet bliver automatisk integreret i prompten. | |
| ## Indstillinger | |
| Lad os se nærmere på konfigurationsmulighederne. | |
| ### Skabelon (`template`) | |
| Indstillingen `template` definerer den prompt, der sendes til LLM, når kommandoen udføres. | |
| ```json title="opencode.json" | |
| { | |
| "command": { | |
| "test": { | |
| "template": "Run the full test suite with coverage report and show any failures.\nFocus on the failing tests and suggest fixes." | |
| } | |
| } | |
| } | |
| ``` | |
| Dette er en **påkrævet** konfigurationsindstilling. | |
| ### Beskrivelse (`description`) | |
| Brug indstillingen `description` til at give en kort beskrivelse af, hvad kommandoen gør. | |
| ```json title="opencode.json" | |
| { | |
| "command": { | |
| "test": { | |
| "description": "Run tests with coverage" | |
| } | |
| } | |
| } | |
| ``` | |
| Dette vises som beskrivelsen i TUI, når du indtaster kommandoen. | |
| ### Agent | |
| Brug `agent`-konfigurationen til valgfrit at angive, hvilken [agent](/docs/agents) der skal udføre denne kommando. | |
| Hvis dette er en [subagent](/docs/agents/#subagents), vil kommandoen som standard udløse en subagent påkaldelse. | |
| For at deaktivere denne adfærd skal du indstille `subtask` til `false`. | |
| ```json title="opencode.json" | |
| { | |
| "command": { | |
| "review": { | |
| "agent": "plan" | |
| } | |
| } | |
| } | |
| ``` | |
| Dette er en **valgfri** konfigurationsindstilling. Hvis det ikke er angivet, er standarden din nuværende agent. | |
| ### Underopgave (`subtask`) | |
| Brug `subtask` boolean til at tvinge kommandoen til at udløse en [subagent](/docs/agents/#subagents) påkaldelse. | |
| Dette er nyttigt, hvis du ønsker, at kommandoen ikke skal forurene din primære kontekst og vil **tvinge** agenten til at fungere som en underagent, | |
| øjeblikkelig `mode` er sat til `primary` på [agent](/docs/agents) konfigurationen. | |
| ```json title="opencode.json" | |
| { | |
| "command": { | |
| "analyze": { | |
| "subtask": true | |
| } | |
| } | |
| } | |
| ``` | |
| Dette er en **valgfri** konfigurationsindstilling. | |
| ### Model | |
| Brug `model`-konfigurationen til at tilsidesætte standardmodellen for denne kommando. | |
| ```json title="opencode.json" | |
| { | |
| "command": { | |
| "analyze": { | |
| "model": "anthropic/claude-3-5-sonnet-20241022" | |
| } | |
| } | |
| } | |
| ``` | |
| Dette er en **valgfri** konfigurationsindstilling. | |
| ## Indbyggede kommandoer | |
| opencode indeholder flere indbyggede kommandoer som `/init`, `/undo`, `/redo`, `/share`, `/help`; [learn more](/docs/tui#commands). | |
| :::note | |
| Brugerdefinerede kommandoer kan tilsidesætte indbyggede kommandoer. | |
| ::: | |
| Hvis du definerer en brugerdefineret kommando med samme navn, vil den tilsidesætte den indbyggede kommando. | |
Xet Storage Details
- Size:
- 7.2 kB
- Xet hash:
- a4c897d7cc35dc9c8f24e17a4d475eb647f797f027fd0b0e7618b2bd73a26f67
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.