mirror of
https://github.com/anomalyco/opencode.git
synced 2026-02-12 03:44:28 +00:00
Compare commits
14 Commits
sqlite2
...
fixup-pr-a
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fb1ae386ba | ||
|
|
aea68c386a | ||
|
|
8eea53a41e | ||
|
|
3befd0c6c5 | ||
|
|
8577eb8ec9 | ||
|
|
c856f875a1 | ||
|
|
264dd213f9 | ||
|
|
125727d09c | ||
|
|
8c7b35ad05 | ||
|
|
e2a33f75e1 | ||
|
|
006d673ed2 | ||
|
|
6b4d617df0 | ||
|
|
e3471526f4 | ||
|
|
6b30e0b752 |
1
.github/VOUCHED.td
vendored
1
.github/VOUCHED.td
vendored
@@ -8,6 +8,7 @@
|
||||
# - Denounce with minus prefix: -username or -platform:username.
|
||||
# - Optional details after a space following the handle.
|
||||
adamdotdevin
|
||||
-florianleibert
|
||||
fwang
|
||||
iamdavidhill
|
||||
jayair
|
||||
|
||||
11
.github/workflows/docs-locale-sync.yml
vendored
11
.github/workflows/docs-locale-sync.yml
vendored
@@ -64,10 +64,13 @@ jobs:
|
||||
|
||||
Requirements:
|
||||
1. Update all relevant locale docs under packages/web/src/content/docs/<locale>/ so they reflect these English page changes.
|
||||
2. Preserve frontmatter keys, internal links, code blocks, and existing locale-specific metadata unless the English change requires an update.
|
||||
3. Keep locale docs structure aligned with their corresponding English pages.
|
||||
4. Do not modify English source docs in packages/web/src/content/docs/*.mdx.
|
||||
5. If no locale updates are needed, make no changes.
|
||||
2. You MUST use the Task tool for translation work and launch subagents with subagent_type `translator` (defined in .opencode/agent/translator.md).
|
||||
3. Do not translate directly in the primary agent. Use translator subagent output as the source for locale text updates.
|
||||
4. Run translator subagent Task calls in parallel whenever file/locale translation work is independent.
|
||||
5. Preserve frontmatter keys, internal links, code blocks, and existing locale-specific metadata unless the English change requires an update.
|
||||
6. Keep locale docs structure aligned with their corresponding English pages.
|
||||
7. Do not modify English source docs in packages/web/src/content/docs/*.mdx.
|
||||
8. If no locale updates are needed, make no changes.
|
||||
|
||||
- name: Commit and push locale docs updates
|
||||
if: steps.changes.outputs.has_changes == 'true'
|
||||
|
||||
4
.github/workflows/pr-management.yml
vendored
4
.github/workflows/pr-management.yml
vendored
@@ -60,9 +60,11 @@ jobs:
|
||||
run: |
|
||||
COMMENT=$(bun script/duplicate-pr.ts -f pr_info.txt "Check the attached file for PR details and search for duplicates")
|
||||
|
||||
gh pr comment "$PR_NUMBER" --body "_The following comment was made by an LLM, it may be inaccurate:_
|
||||
if [ "$COMMENT" != "No duplicate PRs found" ]; then
|
||||
gh pr comment "$PR_NUMBER" --body "_The following comment was made by an LLM, it may be inaccurate:_
|
||||
|
||||
$COMMENT"
|
||||
fi
|
||||
|
||||
add-contributor-label:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
@@ -32,6 +32,9 @@ description: Use this when you are working on file operations like reading, writ
|
||||
- Decode tool stderr with `Bun.readableStreamToText`.
|
||||
- For large writes, use `Bun.write(Bun.file(path), text)`.
|
||||
|
||||
NOTE: Bun.file(...).exists() will return `false` if the value is a directory.
|
||||
Use Filesystem.exists(...) instead if path can be file or directory
|
||||
|
||||
## Quick checklist
|
||||
|
||||
- Use Bun APIs first.
|
||||
|
||||
26
bun.lock
26
bun.lock
@@ -301,8 +301,8 @@
|
||||
"@opencode-ai/sdk": "workspace:*",
|
||||
"@opencode-ai/util": "workspace:*",
|
||||
"@openrouter/ai-sdk-provider": "1.5.4",
|
||||
"@opentui/core": "0.1.77",
|
||||
"@opentui/solid": "0.1.77",
|
||||
"@opentui/core": "0.1.79",
|
||||
"@opentui/solid": "0.1.79",
|
||||
"@parcel/watcher": "2.5.1",
|
||||
"@pierre/diffs": "catalog:",
|
||||
"@solid-primitives/event-bus": "1.1.2",
|
||||
@@ -522,7 +522,7 @@
|
||||
"@tailwindcss/vite": "4.1.11",
|
||||
"@tsconfig/bun": "1.0.9",
|
||||
"@tsconfig/node22": "22.0.2",
|
||||
"@types/bun": "1.3.8",
|
||||
"@types/bun": "1.3.9",
|
||||
"@types/luxon": "3.7.1",
|
||||
"@types/node": "22.13.9",
|
||||
"@types/semver": "7.7.1",
|
||||
@@ -1279,21 +1279,21 @@
|
||||
|
||||
"@opentelemetry/api": ["@opentelemetry/api@1.9.0", "", {}, "sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg=="],
|
||||
|
||||
"@opentui/core": ["@opentui/core@0.1.77", "", { "dependencies": { "bun-ffi-structs": "0.1.2", "diff": "8.0.2", "jimp": "1.6.0", "marked": "17.0.1", "yoga-layout": "3.2.1" }, "optionalDependencies": { "@dimforge/rapier2d-simd-compat": "^0.17.3", "@opentui/core-darwin-arm64": "0.1.77", "@opentui/core-darwin-x64": "0.1.77", "@opentui/core-linux-arm64": "0.1.77", "@opentui/core-linux-x64": "0.1.77", "@opentui/core-win32-arm64": "0.1.77", "@opentui/core-win32-x64": "0.1.77", "bun-webgpu": "0.1.4", "planck": "^1.4.2", "three": "0.177.0" }, "peerDependencies": { "web-tree-sitter": "0.25.10" } }, "sha512-lE3kabm6jdqK3AuBq+O0zZrXdxt6ulmibTc57sf+AsPny6cmwYHnWI4wD6hcreFiYoQVNVvdiJchVgPtowMlEg=="],
|
||||
"@opentui/core": ["@opentui/core@0.1.79", "", { "dependencies": { "bun-ffi-structs": "0.1.2", "diff": "8.0.2", "jimp": "1.6.0", "marked": "17.0.1", "yoga-layout": "3.2.1" }, "optionalDependencies": { "@dimforge/rapier2d-simd-compat": "^0.17.3", "@opentui/core-darwin-arm64": "0.1.79", "@opentui/core-darwin-x64": "0.1.79", "@opentui/core-linux-arm64": "0.1.79", "@opentui/core-linux-x64": "0.1.79", "@opentui/core-win32-arm64": "0.1.79", "@opentui/core-win32-x64": "0.1.79", "bun-webgpu": "0.1.4", "planck": "^1.4.2", "three": "0.177.0" }, "peerDependencies": { "web-tree-sitter": "0.25.10" } }, "sha512-job/t09w8A/aHb/WuaVbimu5fIffyN+PCuVO5cYhXEg/NkOkC/WdFi80B8bwncR/DBPyLAh6oJ3EG86grOVo5g=="],
|
||||
|
||||
"@opentui/core-darwin-arm64": ["@opentui/core-darwin-arm64@0.1.77", "", { "os": "darwin", "cpu": "arm64" }, "sha512-SNqmygCMEsPCW7xWjzCZ5caBf36xaprwVdAnFijGDOuIzLA4iaDa6um8cj3TJh7awenN3NTRsuRc7OuH42UH+g=="],
|
||||
"@opentui/core-darwin-arm64": ["@opentui/core-darwin-arm64@0.1.79", "", { "os": "darwin", "cpu": "arm64" }, "sha512-kgsGniV+DM5G1P3GideyJhvfnthNKcVCAm2mPTIr9InQ3L0gS/Feh7zgwOS/jxDvdlQbOWGKMk2Z3JApeC1MLw=="],
|
||||
|
||||
"@opentui/core-darwin-x64": ["@opentui/core-darwin-x64@0.1.77", "", { "os": "darwin", "cpu": "x64" }, "sha512-/8fsa03swEHTQt/9NrGm98kemlU+VuTURI/OFZiH53vPDRrOYIYoa4Jyga/H7ZMcG+iFhkq97zIe+0Kw95LGmA=="],
|
||||
"@opentui/core-darwin-x64": ["@opentui/core-darwin-x64@0.1.79", "", { "os": "darwin", "cpu": "x64" }, "sha512-OpyAmFqAAKQ2CeFmf/oLWcNksmP6Ryx/3R5dbKXThOudMCeQvfvInJTRbc2jTn9VFpf+Qj4BgHkJg1h90tf/EA=="],
|
||||
|
||||
"@opentui/core-linux-arm64": ["@opentui/core-linux-arm64@0.1.77", "", { "os": "linux", "cpu": "arm64" }, "sha512-QfUXZJPc69OvqoMu+AlLgjqXrwu4IeqcBuUWYMuH8nPTeLsVUc3CBbXdV2lv9UDxWzxzrxdS4ALPaxvmEv9lsQ=="],
|
||||
"@opentui/core-linux-arm64": ["@opentui/core-linux-arm64@0.1.79", "", { "os": "linux", "cpu": "arm64" }, "sha512-DCa5YaknS4bWhFt8TMEGH+qmTinyzuY8hoZbO4crtWXAxofPP7Pas76Cwxlvis/PyLffA+pPxAl1l5sUZpsvqw=="],
|
||||
|
||||
"@opentui/core-linux-x64": ["@opentui/core-linux-x64@0.1.77", "", { "os": "linux", "cpu": "x64" }, "sha512-Kmfx0yUKnPj67AoXYIgL7qQo0QVsUG5Iw8aRtv6XFzXqa5SzBPhaKkKZ9yHPjOmTalZquUs+9zcCRNKpYYuL7A=="],
|
||||
"@opentui/core-linux-x64": ["@opentui/core-linux-x64@0.1.79", "", { "os": "linux", "cpu": "x64" }, "sha512-V6xjvFfHh3NGvsuuDae1KHPRZXHMEE8XL0A/GM6v4I4OCC23kDmkK60Vn6OptQwAzwwbz0X0IX+Ut/GQU9qGgA=="],
|
||||
|
||||
"@opentui/core-win32-arm64": ["@opentui/core-win32-arm64@0.1.77", "", { "os": "win32", "cpu": "arm64" }, "sha512-HGTscPXc7gdd23Nh1DbzUNjog1I+5IZp95XPtLftGTpjrWs60VcetXcyJqK2rQcXNxewJK5yDyaa5QyMjfEhCQ=="],
|
||||
"@opentui/core-win32-arm64": ["@opentui/core-win32-arm64@0.1.79", "", { "os": "win32", "cpu": "arm64" }, "sha512-sPRKnVzOdT5szI59tte7pxwwkYA+07EQN+6miFAvkFuiLmRUngONUD8HVjL7nCnxcPFqxaU4Rvl1y40ST86g8g=="],
|
||||
|
||||
"@opentui/core-win32-x64": ["@opentui/core-win32-x64@0.1.77", "", { "os": "win32", "cpu": "x64" }, "sha512-c7GijsbvVgnlzd2murIbwuwrGbcv76KdUw6WlVv7a0vex50z6xJCpv1keGzpe0QfxrZ/6fFEFX7JnwGLno0wjA=="],
|
||||
"@opentui/core-win32-x64": ["@opentui/core-win32-x64@0.1.79", "", { "os": "win32", "cpu": "x64" }, "sha512-vmQcFTvKf9fqajnDtgU6/uAsiTGwx8//khqHVBmiTEXUsiT792Ki9l8sgNughbuldqG5iZOiF6IaAWU1H67UpA=="],
|
||||
|
||||
"@opentui/solid": ["@opentui/solid@0.1.77", "", { "dependencies": { "@babel/core": "7.28.0", "@babel/preset-typescript": "7.27.1", "@opentui/core": "0.1.77", "babel-plugin-module-resolver": "5.0.2", "babel-preset-solid": "1.9.9", "s-js": "^0.4.9" }, "peerDependencies": { "solid-js": "1.9.9" } }, "sha512-JY+hUbXVV+XCk6bC8dvcwawWCEmC3Gid6GDs23AJWBgHZ3TU2kRKrgwTdltm45DOq2cZXrYCt690/yE8bP+Gxg=="],
|
||||
"@opentui/solid": ["@opentui/solid@0.1.79", "", { "dependencies": { "@babel/core": "7.28.0", "@babel/preset-typescript": "7.27.1", "@opentui/core": "0.1.79", "babel-plugin-module-resolver": "5.0.2", "babel-preset-solid": "1.9.9", "s-js": "^0.4.9" }, "peerDependencies": { "solid-js": "1.9.9" } }, "sha512-c5+0jexKxb8GwRDDkQ/U6isZZqClAzHccXmYiLYmSnqdoQQp2lIGHLartL+K8lfIQrsKClzP2ZHumN6nexRfRg=="],
|
||||
|
||||
"@oslojs/asn1": ["@oslojs/asn1@1.0.0", "", { "dependencies": { "@oslojs/binary": "1.0.0" } }, "sha512-zw/wn0sj0j0QKbIXfIlnEcTviaCzYOY3V5rAyjR6YtOByFtJiT574+8p9Wlach0lZH9fddD4yb9laEAIl4vXQA=="],
|
||||
|
||||
@@ -1853,7 +1853,7 @@
|
||||
|
||||
"@types/braces": ["@types/braces@3.0.5", "", {}, "sha512-SQFof9H+LXeWNz8wDe7oN5zu7ket0qwMu5vZubW4GCJ8Kkeh6nBWUz87+KTz/G3Kqsrp0j/W253XJb3KMEeg3w=="],
|
||||
|
||||
"@types/bun": ["@types/bun@1.3.8", "", { "dependencies": { "bun-types": "1.3.8" } }, "sha512-3LvWJ2q5GerAXYxO2mffLTqOzEu5qnhEAlh48Vnu8WQfnmSwbgagjGZV6BoHKJztENYEDn6QmVd949W4uESRJA=="],
|
||||
"@types/bun": ["@types/bun@1.3.9", "", { "dependencies": { "bun-types": "1.3.9" } }, "sha512-KQ571yULOdWJiMH+RIWIOZ7B2RXQGpL1YQrBtLIV3FqDcCu6FsbFUBwhdKUlCKUpS3PJDsHlJ1QKlpxoVR+xtw=="],
|
||||
|
||||
"@types/chai": ["@types/chai@5.2.3", "", { "dependencies": { "@types/deep-eql": "*", "assertion-error": "^2.0.1" } }, "sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA=="],
|
||||
|
||||
@@ -2181,7 +2181,7 @@
|
||||
|
||||
"bun-pty": ["bun-pty@0.4.8", "", {}, "sha512-rO70Mrbr13+jxHHHu2YBkk2pNqrJE5cJn29WE++PUr+GFA0hq/VgtQPZANJ8dJo6d7XImvBk37Innt8GM7O28w=="],
|
||||
|
||||
"bun-types": ["bun-types@1.3.8", "", { "dependencies": { "@types/node": "*" } }, "sha512-fL99nxdOWvV4LqjmC+8Q9kW3M4QTtTR1eePs94v5ctGqU8OeceWrSUaRw3JYb7tU3FkMIAjkueehrHPPPGKi5Q=="],
|
||||
"bun-types": ["bun-types@1.3.9", "", { "dependencies": { "@types/node": "*" } }, "sha512-+UBWWOakIP4Tswh0Bt0QD0alpTY8cb5hvgiYeWCMet9YukHbzuruIEeXC2D7nMJPB12kbh8C7XJykSexEqGKJg=="],
|
||||
|
||||
"bun-webgpu": ["bun-webgpu@0.1.4", "", { "dependencies": { "@webgpu/types": "^0.1.60" }, "optionalDependencies": { "bun-webgpu-darwin-arm64": "^0.1.4", "bun-webgpu-darwin-x64": "^0.1.4", "bun-webgpu-linux-x64": "^0.1.4", "bun-webgpu-win32-x64": "^0.1.4" } }, "sha512-Kw+HoXl1PMWJTh9wvh63SSRofTA8vYBFCw0XEP1V1fFdQEDhI8Sgf73sdndE/oDpN/7CMx0Yv/q8FCvO39ROMQ=="],
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
{
|
||||
"nodeModules": {
|
||||
"x86_64-linux": "sha256-cvRBvHRuunNjF07c4GVHl5rRgoTn1qfI/HdJWtOV63M=",
|
||||
"aarch64-linux": "sha256-DJUI4pMZ7wQTnyOiuDHALmZz7FZtrTbzRzCuNOShmWE=",
|
||||
"aarch64-darwin": "sha256-JnkqDwuC7lNsjafV+jOGfvs8K1xC8rk5CTOW+spjiCA=",
|
||||
"x86_64-darwin": "sha256-GBeTqq2vDn/mXplYNglrAT2xajjFVzB4ATHnMS0j7z4="
|
||||
"x86_64-linux": "sha256-pp2gb4nxiIT3VltB6Xli2wZPH32JfnMsI+BbihyU1+E=",
|
||||
"aarch64-linux": "sha256-hJwxhBICZz/pbIxQsF/sIpZTlFIgLpcAyF44O8wxMdU=",
|
||||
"aarch64-darwin": "sha256-DPONXP52XOg/ApdSnLp32a+K5XCOnDGhbTUto2Rme0g=",
|
||||
"x86_64-darwin": "sha256-KX1h5LRJSgthpbOPqWlbM/sPf8cvQrdRJvxtrz/FzBQ="
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"description": "AI-powered development tool",
|
||||
"private": true,
|
||||
"type": "module",
|
||||
"packageManager": "bun@1.3.8",
|
||||
"packageManager": "bun@1.3.9",
|
||||
"scripts": {
|
||||
"dev": "bun run --cwd packages/opencode --conditions=browser src/index.ts",
|
||||
"dev:desktop": "bun --cwd packages/desktop tauri dev",
|
||||
@@ -23,7 +23,7 @@
|
||||
"packages/slack"
|
||||
],
|
||||
"catalog": {
|
||||
"@types/bun": "1.3.8",
|
||||
"@types/bun": "1.3.9",
|
||||
"@octokit/rest": "22.0.0",
|
||||
"@hono/zod-validator": "0.4.2",
|
||||
"ulid": "3.0.1",
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 697 B |
@@ -0,0 +1,18 @@
|
||||
<svg width="300" height="300" viewBox="0 0 300 300" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g transform="translate(30, 0)">
|
||||
<g clip-path="url(#clip0_1401_86283)">
|
||||
<mask id="mask0_1401_86283" style="mask-type:luminance" maskUnits="userSpaceOnUse" x="0" y="0" width="240" height="300">
|
||||
<path d="M240 0H0V300H240V0Z" fill="white"/>
|
||||
</mask>
|
||||
<g mask="url(#mask0_1401_86283)">
|
||||
<path d="M180 240H60V120H180V240Z" fill="#4B4646"/>
|
||||
<path d="M180 60H60V240H180V60ZM240 300H0V0H240V300Z" fill="#F1ECEC"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_1401_86283">
|
||||
<rect width="240" height="300" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 631 B |
Binary file not shown.
|
After Width: | Height: | Size: 697 B |
@@ -0,0 +1,18 @@
|
||||
<svg width="300" height="300" viewBox="0 0 300 300" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g transform="translate(30, 0)">
|
||||
<g clip-path="url(#clip0_1401_86274)">
|
||||
<mask id="mask0_1401_86274" style="mask-type:luminance" maskUnits="userSpaceOnUse" x="0" y="0" width="240" height="300">
|
||||
<path d="M240 0H0V300H240V0Z" fill="white"/>
|
||||
</mask>
|
||||
<g mask="url(#mask0_1401_86274)">
|
||||
<path d="M180 240H60V120H180V240Z" fill="#CFCECD"/>
|
||||
<path d="M180 60H60V240H180V60ZM240 300H0V0H240V300Z" fill="#211E1E"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_1401_86274">
|
||||
<rect width="240" height="300" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 631 B |
Binary file not shown.
|
After Width: | Height: | Size: 1.4 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 1.4 KiB |
@@ -7,18 +7,24 @@ import { useI18n } from "~/context/i18n"
|
||||
import { LocaleLinks } from "~/component/locale-links"
|
||||
import previewLogoLight from "../../asset/brand/preview-opencode-logo-light.png"
|
||||
import previewLogoDark from "../../asset/brand/preview-opencode-logo-dark.png"
|
||||
import previewLogoLightSquare from "../../asset/brand/preview-opencode-logo-light-square.png"
|
||||
import previewLogoDarkSquare from "../../asset/brand/preview-opencode-logo-dark-square.png"
|
||||
import previewWordmarkLight from "../../asset/brand/preview-opencode-wordmark-light.png"
|
||||
import previewWordmarkDark from "../../asset/brand/preview-opencode-wordmark-dark.png"
|
||||
import previewWordmarkSimpleLight from "../../asset/brand/preview-opencode-wordmark-simple-light.png"
|
||||
import previewWordmarkSimpleDark from "../../asset/brand/preview-opencode-wordmark-simple-dark.png"
|
||||
import logoLightPng from "../../asset/brand/opencode-logo-light.png"
|
||||
import logoDarkPng from "../../asset/brand/opencode-logo-dark.png"
|
||||
import logoLightSquarePng from "../../asset/brand/opencode-logo-light-square.png"
|
||||
import logoDarkSquarePng from "../../asset/brand/opencode-logo-dark-square.png"
|
||||
import wordmarkLightPng from "../../asset/brand/opencode-wordmark-light.png"
|
||||
import wordmarkDarkPng from "../../asset/brand/opencode-wordmark-dark.png"
|
||||
import wordmarkSimpleLightPng from "../../asset/brand/opencode-wordmark-simple-light.png"
|
||||
import wordmarkSimpleDarkPng from "../../asset/brand/opencode-wordmark-simple-dark.png"
|
||||
import logoLightSvg from "../../asset/brand/opencode-logo-light.svg"
|
||||
import logoDarkSvg from "../../asset/brand/opencode-logo-dark.svg"
|
||||
import logoLightSquareSvg from "../../asset/brand/opencode-logo-light-square.svg"
|
||||
import logoDarkSquareSvg from "../../asset/brand/opencode-logo-dark-square.svg"
|
||||
import wordmarkLightSvg from "../../asset/brand/opencode-wordmark-light.svg"
|
||||
import wordmarkDarkSvg from "../../asset/brand/opencode-wordmark-dark.svg"
|
||||
import wordmarkSimpleLightSvg from "../../asset/brand/opencode-wordmark-simple-light.svg"
|
||||
@@ -135,6 +141,60 @@ export default function Brand() {
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<img src={previewLogoLightSquare} alt="OpenCode brand guidelines" />
|
||||
<div data-component="actions">
|
||||
<button onClick={() => downloadFile(logoLightSquarePng, "opencode-logo-light-square.png")}>
|
||||
PNG
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path
|
||||
d="M13.9583 10.6247L10 14.583L6.04167 10.6247M10 2.08301V13.958M16.25 17.9163H3.75"
|
||||
stroke="currentColor"
|
||||
stroke-width="1.5"
|
||||
stroke-linecap="square"
|
||||
/>
|
||||
</svg>
|
||||
</button>
|
||||
<button onClick={() => downloadFile(logoLightSquareSvg, "opencode-logo-light-square.svg")}>
|
||||
SVG
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path
|
||||
d="M13.9583 10.6247L10 14.583L6.04167 10.6247M10 2.08301V13.958M16.25 17.9163H3.75"
|
||||
stroke="currentColor"
|
||||
stroke-width="1.5"
|
||||
stroke-linecap="square"
|
||||
/>
|
||||
</svg>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<img src={previewLogoDarkSquare} alt="OpenCode brand guidelines" />
|
||||
<div data-component="actions">
|
||||
<button onClick={() => downloadFile(logoDarkSquarePng, "opencode-logo-dark-square.png")}>
|
||||
PNG
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path
|
||||
d="M13.9583 10.6247L10 14.583L6.04167 10.6247M10 2.08301V13.958M16.25 17.9163H3.75"
|
||||
stroke="currentColor"
|
||||
stroke-width="1.5"
|
||||
stroke-linecap="square"
|
||||
/>
|
||||
</svg>
|
||||
</button>
|
||||
<button onClick={() => downloadFile(logoDarkSquareSvg, "opencode-logo-dark-square.svg")}>
|
||||
SVG
|
||||
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path
|
||||
d="M13.9583 10.6247L10 14.583L6.04167 10.6247M10 2.08301V13.958M16.25 17.9163H3.75"
|
||||
stroke="currentColor"
|
||||
stroke-width="1.5"
|
||||
stroke-linecap="square"
|
||||
/>
|
||||
</svg>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<img src={previewWordmarkLight} alt="OpenCode brand guidelines" />
|
||||
<div data-component="actions">
|
||||
|
||||
@@ -84,8 +84,8 @@
|
||||
"@opencode-ai/sdk": "workspace:*",
|
||||
"@opencode-ai/util": "workspace:*",
|
||||
"@openrouter/ai-sdk-provider": "1.5.4",
|
||||
"@opentui/core": "0.1.77",
|
||||
"@opentui/solid": "0.1.77",
|
||||
"@opentui/core": "0.1.79",
|
||||
"@opentui/solid": "0.1.79",
|
||||
"@parcel/watcher": "2.5.1",
|
||||
"@pierre/diffs": "catalog:",
|
||||
"@solid-primitives/event-bus": "1.1.2",
|
||||
|
||||
@@ -571,25 +571,28 @@ export namespace MCP {
|
||||
const clientsSnapshot = await clients()
|
||||
const defaultTimeout = cfg.experimental?.mcp_timeout
|
||||
|
||||
for (const [clientName, client] of Object.entries(clientsSnapshot)) {
|
||||
// Only include tools from connected MCPs (skip disabled ones)
|
||||
if (s.status[clientName]?.status !== "connected") {
|
||||
continue
|
||||
}
|
||||
const connectedClients = Object.entries(clientsSnapshot).filter(
|
||||
([clientName]) => s.status[clientName]?.status === "connected",
|
||||
)
|
||||
|
||||
const toolsResult = await client.listTools().catch((e) => {
|
||||
log.error("failed to get tools", { clientName, error: e.message })
|
||||
const failedStatus = {
|
||||
status: "failed" as const,
|
||||
error: e instanceof Error ? e.message : String(e),
|
||||
}
|
||||
s.status[clientName] = failedStatus
|
||||
delete s.clients[clientName]
|
||||
return undefined
|
||||
})
|
||||
if (!toolsResult) {
|
||||
continue
|
||||
}
|
||||
const toolsResults = await Promise.all(
|
||||
connectedClients.map(async ([clientName, client]) => {
|
||||
const toolsResult = await client.listTools().catch((e) => {
|
||||
log.error("failed to get tools", { clientName, error: e.message })
|
||||
const failedStatus = {
|
||||
status: "failed" as const,
|
||||
error: e instanceof Error ? e.message : String(e),
|
||||
}
|
||||
s.status[clientName] = failedStatus
|
||||
delete s.clients[clientName]
|
||||
return undefined
|
||||
})
|
||||
return { clientName, client, toolsResult }
|
||||
}),
|
||||
)
|
||||
|
||||
for (const { clientName, client, toolsResult } of toolsResults) {
|
||||
if (!toolsResult) continue
|
||||
const mcpConfig = config[clientName]
|
||||
const entry = isMcpConfigured(mcpConfig) ? mcpConfig : undefined
|
||||
const timeout = entry?.timeout ?? defaultTimeout
|
||||
|
||||
@@ -41,7 +41,9 @@ export namespace SessionCompaction {
|
||||
|
||||
const reserved =
|
||||
config.compaction?.reserved ?? Math.min(COMPACTION_BUFFER, ProviderTransform.maxOutputTokens(input.model))
|
||||
const usable = input.model.limit.input ? input.model.limit.input - reserved : context - reserved
|
||||
const usable = input.model.limit.input
|
||||
? input.model.limit.input - reserved
|
||||
: context - ProviderTransform.maxOutputTokens(input.model)
|
||||
return count >= usable
|
||||
}
|
||||
|
||||
|
||||
@@ -1022,9 +1022,9 @@ export namespace SessionPrompt {
|
||||
}
|
||||
}
|
||||
}
|
||||
offset = Math.max(start - 1, 0)
|
||||
offset = Math.max(start, 1)
|
||||
if (end) {
|
||||
limit = end - offset
|
||||
limit = end - (offset - 1)
|
||||
}
|
||||
}
|
||||
const args = { filePath: filepath, offset, limit }
|
||||
|
||||
@@ -2,9 +2,9 @@ Performs exact string replacements in files.
|
||||
|
||||
Usage:
|
||||
- You must use your `Read` tool at least once in the conversation before editing. This tool will error if you attempt an edit without reading the file.
|
||||
- When editing text from Read tool output, ensure you preserve the exact indentation (tabs/spaces) as it appears AFTER the line number prefix. The line number prefix format is: spaces + line number + tab. Everything after that tab is the actual file content to match. Never include any part of the line number prefix in the oldString or newString.
|
||||
- When editing text from Read tool output, ensure you preserve the exact indentation (tabs/spaces) as it appears AFTER the line number prefix. The line number prefix format is: line number + colon + space (e.g., `1: `). Everything after that space is the actual file content to match. Never include any part of the line number prefix in the oldString or newString.
|
||||
- ALWAYS prefer editing existing files in the codebase. NEVER write new files unless explicitly required.
|
||||
- Only use emojis if the user explicitly requests it. Avoid adding emojis to files unless asked.
|
||||
- The edit will FAIL if `oldString` is not found in the file with an error "oldString not found in content".
|
||||
- The edit will FAIL if `oldString` is found multiple times in the file with an error "oldString found multiple times and requires more code context to uniquely identify the intended match". Either provide a larger string with more surrounding context to make it unique or use `replaceAll` to change every instance of `oldString`.
|
||||
- The edit will FAIL if `oldString` is found multiple times in the file with an error "Found multiple matches for oldString. Provide more surrounding lines in oldString to identify the correct match." Either provide a larger string with more surrounding context to make it unique or use `replaceAll` to change every instance of `oldString`.
|
||||
- Use `replaceAll` for replacing and renaming strings across the file. This parameter is useful if you want to rename a variable for instance.
|
||||
|
||||
@@ -17,19 +17,26 @@ const MAX_BYTES = 50 * 1024
|
||||
export const ReadTool = Tool.define("read", {
|
||||
description: DESCRIPTION,
|
||||
parameters: z.object({
|
||||
filePath: z.string().describe("The path to the file to read"),
|
||||
offset: z.coerce.number().describe("The line number to start reading from (0-based)").optional(),
|
||||
limit: z.coerce.number().describe("The number of lines to read (defaults to 2000)").optional(),
|
||||
filePath: z.string().describe("The absolute path to the file or directory to read"),
|
||||
offset: z.coerce.number().describe("The line number to start reading from (1-indexed)").optional(),
|
||||
limit: z.coerce.number().describe("The maximum number of lines to read (defaults to 2000)").optional(),
|
||||
}),
|
||||
async execute(params, ctx) {
|
||||
if (params.offset !== undefined && params.offset < 1) {
|
||||
throw new Error("offset must be greater than or equal to 1")
|
||||
}
|
||||
let filepath = params.filePath
|
||||
if (!path.isAbsolute(filepath)) {
|
||||
filepath = path.resolve(Instance.directory, filepath)
|
||||
}
|
||||
const title = path.relative(Instance.worktree, filepath)
|
||||
|
||||
const file = Bun.file(filepath)
|
||||
const stat = await file.stat().catch(() => undefined)
|
||||
|
||||
await assertExternalDirectory(ctx, filepath, {
|
||||
bypass: Boolean(ctx.extra?.["bypassCwdCheck"]),
|
||||
kind: stat?.isDirectory() ? "directory" : "file",
|
||||
})
|
||||
|
||||
await ctx.ask({
|
||||
@@ -39,8 +46,7 @@ export const ReadTool = Tool.define("read", {
|
||||
metadata: {},
|
||||
})
|
||||
|
||||
const file = Bun.file(filepath)
|
||||
if (!(await file.exists())) {
|
||||
if (!stat) {
|
||||
const dir = path.dirname(filepath)
|
||||
const base = path.basename(filepath)
|
||||
|
||||
@@ -60,6 +66,48 @@ export const ReadTool = Tool.define("read", {
|
||||
throw new Error(`File not found: ${filepath}`)
|
||||
}
|
||||
|
||||
if (stat.isDirectory()) {
|
||||
const dirents = await fs.promises.readdir(filepath, { withFileTypes: true })
|
||||
const entries = await Promise.all(
|
||||
dirents.map(async (dirent) => {
|
||||
if (dirent.isDirectory()) return dirent.name + "/"
|
||||
if (dirent.isSymbolicLink()) {
|
||||
const target = await fs.promises.stat(path.join(filepath, dirent.name)).catch(() => undefined)
|
||||
if (target?.isDirectory()) return dirent.name + "/"
|
||||
}
|
||||
return dirent.name
|
||||
}),
|
||||
)
|
||||
entries.sort((a, b) => a.localeCompare(b))
|
||||
|
||||
const limit = params.limit ?? DEFAULT_READ_LIMIT
|
||||
const offset = params.offset ?? 1
|
||||
const start = offset - 1
|
||||
const sliced = entries.slice(start, start + limit)
|
||||
const truncated = start + sliced.length < entries.length
|
||||
|
||||
const output = [
|
||||
`<path>${filepath}</path>`,
|
||||
`<type>directory</type>`,
|
||||
`<entries>`,
|
||||
sliced.join("\n"),
|
||||
truncated
|
||||
? `\n(Showing ${sliced.length} of ${entries.length} entries. Use 'offset' parameter to read beyond entry ${offset + sliced.length})`
|
||||
: `\n(${entries.length} entries)`,
|
||||
`</entries>`,
|
||||
].join("\n")
|
||||
|
||||
return {
|
||||
title,
|
||||
output,
|
||||
metadata: {
|
||||
preview: sliced.slice(0, 20).join("\n"),
|
||||
truncated,
|
||||
loaded: [] as string[],
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
const instructions = await InstructionPrompt.resolve(ctx.messages, filepath, ctx.messageID)
|
||||
|
||||
// Exclude SVG (XML-based) and vnd.fastbidsheet (.fbs extension, commonly FlatBuffers schema files)
|
||||
@@ -75,7 +123,7 @@ export const ReadTool = Tool.define("read", {
|
||||
metadata: {
|
||||
preview: msg,
|
||||
truncated: false,
|
||||
...(instructions.length > 0 && { loaded: instructions.map((i) => i.filepath) }),
|
||||
loaded: instructions.map((i) => i.filepath),
|
||||
},
|
||||
attachments: [
|
||||
{
|
||||
@@ -94,13 +142,15 @@ export const ReadTool = Tool.define("read", {
|
||||
if (isBinary) throw new Error(`Cannot read binary file: ${filepath}`)
|
||||
|
||||
const limit = params.limit ?? DEFAULT_READ_LIMIT
|
||||
const offset = params.offset || 0
|
||||
const offset = params.offset ?? 1
|
||||
const start = offset - 1
|
||||
const lines = await file.text().then((text) => text.split("\n"))
|
||||
if (start >= lines.length) throw new Error(`Offset ${offset} is out of range for this file (${lines.length} lines)`)
|
||||
|
||||
const raw: string[] = []
|
||||
let bytes = 0
|
||||
let truncatedByBytes = false
|
||||
for (let i = offset; i < Math.min(lines.length, offset + limit); i++) {
|
||||
for (let i = start; i < Math.min(lines.length, start + limit); i++) {
|
||||
const line = lines[i].length > MAX_LINE_LENGTH ? lines[i].substring(0, MAX_LINE_LENGTH) + "..." : lines[i]
|
||||
const size = Buffer.byteLength(line, "utf-8") + (raw.length > 0 ? 1 : 0)
|
||||
if (bytes + size > MAX_BYTES) {
|
||||
@@ -112,15 +162,15 @@ export const ReadTool = Tool.define("read", {
|
||||
}
|
||||
|
||||
const content = raw.map((line, index) => {
|
||||
return `${(index + offset + 1).toString().padStart(5, "0")}| ${line}`
|
||||
return `${index + offset}: ${line}`
|
||||
})
|
||||
const preview = raw.slice(0, 20).join("\n")
|
||||
|
||||
let output = "<file>\n"
|
||||
let output = [`<path>${filepath}</path>`, `<type>file</type>`, "<content>"].join("\n")
|
||||
output += content.join("\n")
|
||||
|
||||
const totalLines = lines.length
|
||||
const lastReadLine = offset + raw.length
|
||||
const lastReadLine = offset + raw.length - 1
|
||||
const hasMoreLines = totalLines > lastReadLine
|
||||
const truncated = hasMoreLines || truncatedByBytes
|
||||
|
||||
@@ -131,7 +181,7 @@ export const ReadTool = Tool.define("read", {
|
||||
} else {
|
||||
output += `\n\n(End of file - total ${totalLines} lines)`
|
||||
}
|
||||
output += "\n</file>"
|
||||
output += "\n</content>"
|
||||
|
||||
// just warms the lsp client
|
||||
LSP.touchFile(filepath, false)
|
||||
@@ -147,7 +197,7 @@ export const ReadTool = Tool.define("read", {
|
||||
metadata: {
|
||||
preview,
|
||||
truncated,
|
||||
...(instructions.length > 0 && { loaded: instructions.map((i) => i.filepath) }),
|
||||
loaded: instructions.map((i) => i.filepath),
|
||||
},
|
||||
}
|
||||
},
|
||||
|
||||
@@ -1,12 +1,14 @@
|
||||
Reads a file from the local filesystem. You can access any file directly by using this tool.
|
||||
Assume this tool is able to read all files on the machine. If the User provides a path to a file assume that path is valid. It is okay to read a file that does not exist; an error will be returned.
|
||||
Read a file or directory from the local filesystem. If the path does not exist, an error is returned.
|
||||
|
||||
Usage:
|
||||
- The filePath parameter must be an absolute path, not a relative path
|
||||
- By default, it reads up to 2000 lines starting from the beginning of the file
|
||||
- You can optionally specify a line offset and limit (especially handy for long files), but it's recommended to read the whole file by not providing these parameters
|
||||
- Any lines longer than 2000 characters will be truncated
|
||||
- Results are returned using cat -n format, with line numbers starting at 1
|
||||
- You have the capability to call multiple tools in a single response. It is always better to speculatively read multiple files as a batch that are potentially useful.
|
||||
- If you read a file that exists but has empty contents you will receive a system reminder warning in place of file contents.
|
||||
- You can read image files using this tool.
|
||||
- The filePath parameter should be an absolute path.
|
||||
- By default, this tool returns up to 2000 lines from the start of the file.
|
||||
- The offset parameter is the line number to start from (1-indexed).
|
||||
- To read later sections, call this tool again with a larger offset.
|
||||
- Use the grep tool to find specific content in large files or files with long lines.
|
||||
- If you are unsure of the correct file path, use the glob tool to look up filenames by glob pattern.
|
||||
- Contents are returned with each line prefixed by its line number as `<line>: <content>`. For example, if a file has contents "foo\n", you will receive "1: foo\n". For directories, entries are returned one per line (without line numbers) with a trailing `/` for subdirectories.
|
||||
- Any line longer than 2000 characters is truncated.
|
||||
- Call this tool in parallel when you know there are multiple files you want to read.
|
||||
- Avoid tiny repeated slices (30 line chunks). If you need more context, read a larger window.
|
||||
- This tool can read image files and PDFs and return them as file attachments.
|
||||
|
||||
@@ -78,6 +78,32 @@ describe("tool.read external_directory permission", () => {
|
||||
})
|
||||
})
|
||||
|
||||
test("asks for directory-scoped external_directory permission when reading external directory", async () => {
|
||||
await using outerTmp = await tmpdir({
|
||||
init: async (dir) => {
|
||||
await Bun.write(path.join(dir, "external", "a.txt"), "a")
|
||||
},
|
||||
})
|
||||
await using tmp = await tmpdir({ git: true })
|
||||
await Instance.provide({
|
||||
directory: tmp.path,
|
||||
fn: async () => {
|
||||
const read = await ReadTool.init()
|
||||
const requests: Array<Omit<PermissionNext.Request, "id" | "sessionID" | "tool">> = []
|
||||
const testCtx = {
|
||||
...ctx,
|
||||
ask: async (req: Omit<PermissionNext.Request, "id" | "sessionID" | "tool">) => {
|
||||
requests.push(req)
|
||||
},
|
||||
}
|
||||
await read.execute({ filePath: path.join(outerTmp.path, "external") }, testCtx)
|
||||
const extDirReq = requests.find((r) => r.permission === "external_directory")
|
||||
expect(extDirReq).toBeDefined()
|
||||
expect(extDirReq!.patterns).toContain(path.join(outerTmp.path, "external", "*"))
|
||||
},
|
||||
})
|
||||
})
|
||||
|
||||
test("asks for external_directory permission when reading relative path outside project", async () => {
|
||||
await using tmp = await tmpdir({ git: true })
|
||||
await Instance.provide({
|
||||
@@ -232,7 +258,7 @@ describe("tool.read truncation", () => {
|
||||
test("respects offset parameter", async () => {
|
||||
await using tmp = await tmpdir({
|
||||
init: async (dir) => {
|
||||
const lines = Array.from({ length: 20 }, (_, i) => `line${i}`).join("\n")
|
||||
const lines = Array.from({ length: 20 }, (_, i) => `line${i + 1}`).join("\n")
|
||||
await Bun.write(path.join(dir, "offset.txt"), lines)
|
||||
},
|
||||
})
|
||||
@@ -249,6 +275,43 @@ describe("tool.read truncation", () => {
|
||||
})
|
||||
})
|
||||
|
||||
test("throws when offset is beyond end of file", async () => {
|
||||
await using tmp = await tmpdir({
|
||||
init: async (dir) => {
|
||||
const lines = Array.from({ length: 3 }, (_, i) => `line${i + 1}`).join("\n")
|
||||
await Bun.write(path.join(dir, "short.txt"), lines)
|
||||
},
|
||||
})
|
||||
await Instance.provide({
|
||||
directory: tmp.path,
|
||||
fn: async () => {
|
||||
const read = await ReadTool.init()
|
||||
await expect(
|
||||
read.execute({ filePath: path.join(tmp.path, "short.txt"), offset: 4, limit: 5 }, ctx),
|
||||
).rejects.toThrow("Offset 4 is out of range for this file (3 lines)")
|
||||
},
|
||||
})
|
||||
})
|
||||
|
||||
test("does not mark final directory page as truncated", async () => {
|
||||
await using tmp = await tmpdir({
|
||||
init: async (dir) => {
|
||||
await Promise.all(
|
||||
Array.from({ length: 10 }, (_, i) => Bun.write(path.join(dir, "dir", `file-${i + 1}.txt`), `line${i}`)),
|
||||
)
|
||||
},
|
||||
})
|
||||
await Instance.provide({
|
||||
directory: tmp.path,
|
||||
fn: async () => {
|
||||
const read = await ReadTool.init()
|
||||
const result = await read.execute({ filePath: path.join(tmp.path, "dir"), offset: 6, limit: 5 }, ctx)
|
||||
expect(result.metadata.truncated).toBe(false)
|
||||
expect(result.output).not.toContain("Showing 5 of 10 entries")
|
||||
},
|
||||
})
|
||||
})
|
||||
|
||||
test("truncates long lines", async () => {
|
||||
await using tmp = await tmpdir({
|
||||
init: async (dir) => {
|
||||
|
||||
@@ -45,7 +45,7 @@ description: هيّئ الوكلاء المتخصصين واستخدمهم.
|
||||
|
||||
---
|
||||
|
||||
### استخدام build
|
||||
### استخدام Build
|
||||
|
||||
_الوضع_: `primary`
|
||||
|
||||
@@ -53,7 +53,7 @@ Build هو الوكيل الأساسي **الافتراضي** مع تفعيل ج
|
||||
|
||||
---
|
||||
|
||||
### استخدام plan
|
||||
### استخدام Plan
|
||||
|
||||
_الوضع_: `primary`
|
||||
|
||||
@@ -67,7 +67,7 @@ _الوضع_: `primary`
|
||||
|
||||
---
|
||||
|
||||
### استخدام general
|
||||
### استخدام General
|
||||
|
||||
_الوضع_: `subagent`
|
||||
|
||||
@@ -75,7 +75,7 @@ _الوضع_: `subagent`
|
||||
|
||||
---
|
||||
|
||||
### استخدام explore
|
||||
### استخدام Explore
|
||||
|
||||
_الوضع_: `subagent`
|
||||
|
||||
@@ -83,7 +83,7 @@ _الوضع_: `subagent`
|
||||
|
||||
---
|
||||
|
||||
### استخدام compaction
|
||||
### استخدام Compaction
|
||||
|
||||
_الوضع_: `primary`
|
||||
|
||||
@@ -91,7 +91,7 @@ _الوضع_: `primary`
|
||||
|
||||
---
|
||||
|
||||
### استخدام title
|
||||
### استخدام Title
|
||||
|
||||
_الوضع_: `primary`
|
||||
|
||||
@@ -99,7 +99,7 @@ _الوضع_: `primary`
|
||||
|
||||
---
|
||||
|
||||
### استخدام summary
|
||||
### استخدام Summary
|
||||
|
||||
_الوضع_: `primary`
|
||||
|
||||
|
||||
@@ -69,10 +69,10 @@ opencode attach [url]
|
||||
يتيح ذلك استخدام واجهة TUI مع واجهة خلفية لـ OpenCode تعمل عن بعد. على سبيل المثال:
|
||||
|
||||
```bash
|
||||
# Start the backend server for web/mobile access
|
||||
# ابدأ خادم الواجهة الخلفية للوصول عبر الويب/الجوال
|
||||
opencode web --port 4096 --hostname 0.0.0.0
|
||||
|
||||
# In another terminal, attach the TUI to the running backend
|
||||
# في محطة طرفية (terminal) أخرى، اربط TUI بالواجهة الخلفية قيد التشغيل
|
||||
opencode attach http://10.20.30.40:4096
|
||||
```
|
||||
|
||||
@@ -326,10 +326,10 @@ opencode run Explain the use of context in Go
|
||||
يمكنك أيضا الإرفاق بمثيل `opencode serve` قيد التشغيل لتجنّب زمن الإقلاع البارد لخوادم MCP في كل تشغيل:
|
||||
|
||||
```bash
|
||||
# Start a headless server in one terminal
|
||||
# ابدأ خادمًا بلا واجهة في محطة طرفية واحدة
|
||||
opencode serve
|
||||
|
||||
# In another terminal, run commands that attach to it
|
||||
# في محطة طرفية أخرى، شغّل الأوامر التي ترتبط به
|
||||
opencode run --attach http://localhost:4096 "Explain async/await in JavaScript"
|
||||
```
|
||||
|
||||
|
||||
@@ -54,11 +54,11 @@ Focus on the failing tests and suggest fixes.
|
||||
{
|
||||
"$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
|
||||
// هذه هي المطالبة التي ستُرسل إلى 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
|
||||
// يظهر هذا كوصف في TUI
|
||||
"description": "Run tests with coverage",
|
||||
"agent": "build",
|
||||
"model": "anthropic/claude-3-5-sonnet-20241022"
|
||||
|
||||
@@ -14,7 +14,7 @@ description: استخدام ملف إعدادات OpenCode بصيغة JSON.
|
||||
```jsonc title="opencode.jsonc"
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
// Theme configuration
|
||||
// إعدادات السمة
|
||||
"theme": "opencode",
|
||||
"model": "anthropic/claude-sonnet-4-5",
|
||||
"autoupdate": true,
|
||||
@@ -326,7 +326,7 @@ opencode run "Hello world"
|
||||
"model": "anthropic/claude-sonnet-4-5",
|
||||
"prompt": "You are a code reviewer. Focus on security, performance, and maintainability.",
|
||||
"tools": {
|
||||
// Disable file modification tools for review-only agent
|
||||
// تعطيل أدوات تعديل الملفات لوكيل المراجعة فقط
|
||||
"write": false,
|
||||
"edit": false,
|
||||
},
|
||||
|
||||
@@ -221,7 +221,7 @@ How is authentication handled in @packages/functions/src/api/index.ts
|
||||
|
||||
انتقل إليه باستخدام مفتاح **Tab**. سترى مؤشرا لذلك في الزاوية السفلية اليمنى.
|
||||
|
||||
```bash frame="none" title="Switch to Plan mode"
|
||||
```bash frame="none" title="التبديل إلى وضع Plan"
|
||||
<TAB>
|
||||
```
|
||||
|
||||
|
||||
@@ -278,10 +278,10 @@ opencode mcp logout my-oauth-server
|
||||
إذا فشل خادم MCP بعيد في المصادقة، يمكنك تشخيص المشكلة باستخدام:
|
||||
|
||||
```bash
|
||||
# View auth status for all OAuth-capable servers
|
||||
# عرض حالة المصادقة لجميع الخوادم القادرة على OAuth
|
||||
opencode mcp auth list
|
||||
|
||||
# Debug connection and OAuth flow for a specific server
|
||||
# تصحيح الاتصال وتدفق OAuth لخادم محدد
|
||||
opencode mcp debug my-oauth-server
|
||||
```
|
||||
|
||||
|
||||
@@ -12,13 +12,13 @@ description: إعداد الوكلاء والشهادات المخصصة.
|
||||
يتبع OpenCode متغيرات بيئة الوكيل القياسية.
|
||||
|
||||
```bash
|
||||
# HTTPS proxy (recommended)
|
||||
# وكيل HTTPS (موصى به)
|
||||
export HTTPS_PROXY=https://proxy.example.com:8080
|
||||
|
||||
# HTTP proxy (if HTTPS not available)
|
||||
# وكيل HTTP (إذا لم يتوفر HTTPS)
|
||||
export HTTP_PROXY=http://proxy.example.com:8080
|
||||
|
||||
# Bypass proxy for local server (required)
|
||||
# تجاوز الوكيل للخادم المحلي (مطلوب)
|
||||
export NO_PROXY=localhost,127.0.0.1
|
||||
```
|
||||
|
||||
|
||||
@@ -89,7 +89,7 @@ OpenCode Zen هي قائمة نماذج يوفّرها فريق OpenCode وقد
|
||||
فلا تتردد في فتح PR.
|
||||
|
||||
:::note
|
||||
ألا ترى مزوّدا هنا؟ أرسل PR.
|
||||
لم تجد المزوّد الذي تبحث عنه؟ أرسل PR.
|
||||
:::
|
||||
|
||||
---
|
||||
@@ -139,13 +139,13 @@ OpenCode Zen هي قائمة نماذج يوفّرها فريق OpenCode وقد
|
||||
عيّن أحد متغيرات البيئة التالية أثناء تشغيل opencode:
|
||||
|
||||
```bash
|
||||
# Option 1: Using AWS access keys
|
||||
# الخيار 1: استخدام مفاتيح وصول AWS
|
||||
AWS_ACCESS_KEY_ID=XXX AWS_SECRET_ACCESS_KEY=YYY opencode
|
||||
|
||||
# Option 2: Using named AWS profile
|
||||
# الخيار 2: استخدام ملف تعريف AWS مسمّى
|
||||
AWS_PROFILE=my-profile opencode
|
||||
|
||||
# Option 3: Using Bedrock bearer token
|
||||
# الخيار 3: استخدام رمز Bedrock المميز (bearer token)
|
||||
AWS_BEARER_TOKEN_BEDROCK=XXX opencode
|
||||
```
|
||||
|
||||
|
||||
@@ -366,7 +366,7 @@ OPENCODE_ENABLE_EXA=1 opencode
|
||||
|
||||
---
|
||||
|
||||
### Ignore patterns
|
||||
### أنماط التجاهل
|
||||
|
||||
لتضمين ملفات يتم تجاهلها عادة، أنشئ ملف `.ignore` في جذر المشروع. يمكن لهذا الملف السماح صراحة بمسارات محددة.
|
||||
|
||||
|
||||
@@ -290,12 +290,12 @@ How is auth handled in @packages/functions/src/api/index.ts?
|
||||
<Tabs>
|
||||
<TabItem label="Linux/macOS">
|
||||
```bash
|
||||
# Example for nano or vim
|
||||
# مثال لـ nano أو vim
|
||||
export EDITOR=nano
|
||||
export EDITOR=vim
|
||||
|
||||
# For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc.
|
||||
# include --wait
|
||||
# للمحررات الرسومية، VS Code، Cursor، VSCodium، Windsurf، Zed، إلخ.
|
||||
# قم بتضمين --wait
|
||||
export EDITOR="code --wait"
|
||||
```
|
||||
|
||||
@@ -308,8 +308,8 @@ How is auth handled in @packages/functions/src/api/index.ts?
|
||||
```bash
|
||||
set EDITOR=notepad
|
||||
|
||||
# For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc.
|
||||
# include --wait
|
||||
# للمحررات الرسومية، VS Code، Cursor، VSCodium، Windsurf، Zed، إلخ.
|
||||
# قم بتضمين --wait
|
||||
set EDITOR=code --wait
|
||||
```
|
||||
|
||||
@@ -321,8 +321,8 @@ How is auth handled in @packages/functions/src/api/index.ts?
|
||||
```powershell
|
||||
$env:EDITOR = "notepad"
|
||||
|
||||
# For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc.
|
||||
# include --wait
|
||||
# للمحررات الرسومية، VS Code، Cursor، VSCodium، Windsurf، Zed، إلخ.
|
||||
# قم بتضمين --wait
|
||||
$env:EDITOR = "code --wait"
|
||||
```
|
||||
|
||||
|
||||
@@ -113,10 +113,10 @@ OPENCODE_SERVER_PASSWORD=secret opencode web
|
||||
يمكنك إرفاق واجهة terminal (TUI) بخادم ويب قيد التشغيل:
|
||||
|
||||
```bash
|
||||
# Start the web server
|
||||
# ابدأ خادم الويب
|
||||
opencode web --port 4096
|
||||
|
||||
# In another terminal, attach the TUI
|
||||
# في محطة طرفية أخرى، اربط TUI
|
||||
opencode attach http://localhost:4096
|
||||
```
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ ACP je otvoreni protokol koji standardizira komunikaciju između uređivača kod
|
||||
|
||||
---
|
||||
|
||||
## Konfiguriši
|
||||
## Konfiguracija
|
||||
|
||||
Da biste koristili OpenCode putem ACP-a, konfigurirajte svoj uređivač da pokrene naredbu `opencode acp`.
|
||||
|
||||
@@ -140,7 +140,7 @@ Ova konfiguracija postavlja CodeCompanion da koristi OpenCode kao ACP chat agent
|
||||
|
||||
Ako trebate proslijediti varijable okruženja (kao što je `OPENCODE_API_KEY`), pogledajte [Configuring Adapters: Environment Variables](https://codecompanion.olimorris.dev/getting-started#setting-an-api-key) u dokumentaciji CodeCompanion.nvim.
|
||||
|
||||
## Podrška
|
||||
## Podržane funkcije
|
||||
|
||||
OpenCode radi isto kroz ACP kao i u terminalu. Podržane su sve funkcije:
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@ Možete se prebacivati između agenata tokom sesije ili ih pozvati spominj
|
||||
|
||||
## Vrste
|
||||
|
||||
Postoje dvije vrste agenata u OpenCode; primarni agenti i podagenti.
|
||||
Postoje dvije vrste agenata u OpenCode: primarni agenti i podagenti.
|
||||
|
||||
---
|
||||
|
||||
@@ -45,17 +45,17 @@ OpenCode dolazi sa dva ugrađena primarna agenta i dva ugrađena subagenta.
|
||||
|
||||
---
|
||||
|
||||
### Koristi build
|
||||
### Build agent
|
||||
|
||||
_Mode_: `primary`
|
||||
_Režim_: `primary`
|
||||
|
||||
Build je **podrazumevani** primarni agent sa svim omogućenim alatima. Ovo je standardni agent za razvojni rad gdje vam je potreban pun pristup operacijama datoteka i sistemskim komandama.
|
||||
|
||||
---
|
||||
|
||||
### Koristi plan
|
||||
### Plan agent
|
||||
|
||||
_Mode_: `primary`
|
||||
_Režim_: `primary`
|
||||
|
||||
Ograničeni agent dizajniran za planiranje i analizu. Koristimo sistem dozvola kako bismo vam pružili veću kontrolu i spriječili neželjene promjene.
|
||||
Prema zadanim postavkama, sve sljedeće je postavljeno na `ask`:
|
||||
@@ -67,47 +67,47 @@ Ovaj agent je koristan kada želite da LLM analizira kod, predloži promjene ili
|
||||
|
||||
---
|
||||
|
||||
### Koristi general
|
||||
### General agent
|
||||
|
||||
_Mode_: `subagent`
|
||||
_Režim_: `subagent`
|
||||
|
||||
Agent opće namjene za istraživanje složenih pitanja i izvršavanje zadataka u više koraka. Ima potpuni pristup alatima (osim todo), tako da može mijenjati fajlove kada je to potrebno. Koristite ovo za paralelno pokretanje više jedinica rada.
|
||||
|
||||
---
|
||||
|
||||
### Koristi explore
|
||||
### Explore agent
|
||||
|
||||
_Mode_: `subagent`
|
||||
_Režim_: `subagent`
|
||||
|
||||
Brzi agent samo za čitanje za istraživanje kodnih baza. Nije moguće mijenjati fajlove. Koristite ovo kada trebate brzo pronaći datoteke po uzorku, pretražiti kod za ključne riječi ili odgovoriti na pitanja o bazi kodova.
|
||||
|
||||
---
|
||||
|
||||
### Koristi compaction
|
||||
### Compaction agent
|
||||
|
||||
_Mode_: `primary`
|
||||
_Režim_: `primary`
|
||||
|
||||
Skriveni sistemski agent koji sažima dugi kontekst u manji sažetak. Pokreće se automatski kada je potrebno i ne može se odabrati u korisničkom interfejsu.
|
||||
|
||||
---
|
||||
|
||||
### Koristi title
|
||||
### Title agent
|
||||
|
||||
_Mode_: `primary`
|
||||
_Režim_: `primary`
|
||||
|
||||
Skriveni sistemski agent koji generiše kratke naslove sesija. Pokreće se automatski i ne može se odabrati u korisničkom interfejsu.
|
||||
|
||||
---
|
||||
|
||||
### Koristi summary
|
||||
### Summary agent
|
||||
|
||||
_Mode_: `primary`
|
||||
_Režim_: `primary`
|
||||
|
||||
Skriveni sistemski agent koji kreira sažetke sesije. Pokreće se automatski i ne može se odabrati u korisničkom interfejsu.
|
||||
|
||||
---
|
||||
|
||||
## Upotreba
|
||||
## Korištenje
|
||||
|
||||
1. Za primarne agente, koristite taster **Tab** za kretanje kroz njih tokom sesije. Također možete koristiti svoju konfiguriranu vezu tipke `switch_agent`.
|
||||
|
||||
@@ -215,7 +215,7 @@ Pogledajmo ove opcije konfiguracije detaljno.
|
||||
|
||||
---
|
||||
|
||||
### Description
|
||||
### Opis
|
||||
|
||||
Koristite opciju `description` da pružite kratak opis onoga što agent radi i kada ga koristiti.
|
||||
|
||||
@@ -233,7 +233,7 @@ Ovo je **obavezna** opcija konfiguracije.
|
||||
|
||||
---
|
||||
|
||||
### Temperature
|
||||
### Temperatura
|
||||
|
||||
Kontrolišite slučajnost i kreativnost odgovora LLM-a pomoću `temperature` konfiguracije.
|
||||
|
||||
@@ -280,7 +280,7 @@ Ako temperatura nije navedena, OpenCode koristi standardne postavke specifične
|
||||
|
||||
---
|
||||
|
||||
### Max steps
|
||||
### Maksimalan broj koraka
|
||||
|
||||
Kontrolirajte maksimalni broj iteracija agenta koje agent može izvesti prije nego što bude prisiljen da odgovori samo tekstom. Ovo omogućava korisnicima koji žele kontrolirati troškove da postave ograničenje na akcije agenta.
|
||||
|
||||
@@ -306,7 +306,7 @@ Naslijeđeno polje `maxSteps` je zastarjelo. Umjesto toga koristite `steps`.
|
||||
|
||||
---
|
||||
|
||||
### Disable
|
||||
### Onemogućavanje
|
||||
|
||||
Postavite na `true` da onemogućite agenta.
|
||||
|
||||
@@ -322,7 +322,7 @@ Postavite na `true` da onemogućite agenta.
|
||||
|
||||
---
|
||||
|
||||
### Prompt
|
||||
### Upit
|
||||
|
||||
Navedite prilagođenu sistemsku prompt datoteku za ovog agenta sa `prompt` konfiguracijom. Datoteka s promptom treba da sadrži upute specifične za svrhu agenta.
|
||||
|
||||
@@ -362,7 +362,7 @@ ID modela u vašoj OpenCode konfiguraciji koristi format `provider/model-id`. Na
|
||||
|
||||
---
|
||||
|
||||
### Tools
|
||||
### Alati
|
||||
|
||||
Kontrolirajte koji su alati dostupni u ovom agentu koristeći konfiguraciju `tools`. Možete omogućiti ili onemogućiti određene alate tako što ćete ih postaviti na `true` ili `false`.
|
||||
|
||||
@@ -409,7 +409,7 @@ Također možete koristiti zamjenske znakove za kontrolu više alata odjednom. N
|
||||
|
||||
---
|
||||
|
||||
### Permissions
|
||||
### Dozvole
|
||||
|
||||
Možete konfigurirati dozvole za upravljanje radnjama koje agent može poduzeti. Trenutno se dozvole za alate `edit`, `bash` i `webfetch` mogu konfigurirati na:
|
||||
|
||||
@@ -521,7 +521,7 @@ Budući da posljednje podudarno pravilo ima prednost, prvo postavite zamjenski z
|
||||
|
||||
---
|
||||
|
||||
### Mode
|
||||
### Način rada
|
||||
|
||||
Kontrolirajte način rada agenta koristeći konfiguraciju `mode`. Opcija `mode` se koristi da specificira kako se agent može koristiti.
|
||||
|
||||
@@ -539,7 +539,7 @@ Opcija `mode` se može postaviti na `primary`, `subagent` ili `all`. Ako `mode`
|
||||
|
||||
---
|
||||
|
||||
### Hidden
|
||||
### Skriveno
|
||||
|
||||
Sakrij podagenta iz `@` menija za automatsko dovršavanje sa `hidden: true`. Korisno za interne podagente koje bi drugi agenti trebali programski pozvati samo preko Task alata.
|
||||
|
||||
@@ -562,7 +562,7 @@ Odnosi se samo na `mode: subagent` agente.
|
||||
|
||||
---
|
||||
|
||||
### Task permissions
|
||||
### Dozvole zadataka
|
||||
|
||||
Kontrolirajte koje podagente agent može pozvati preko Task alata sa `permission.task`. Koristi glob uzorke za fleksibilno uparivanje.
|
||||
|
||||
@@ -595,7 +595,7 @@ Korisnici uvijek mogu pozvati bilo kojeg subagenta direktno preko `@` menija za
|
||||
|
||||
---
|
||||
|
||||
### Color
|
||||
### Boja
|
||||
|
||||
Prilagodite vizualni izgled agenta u korisničkom sučelju s opcijom `color`. Ovo utiče na to kako se agent pojavljuje u interfejsu.
|
||||
|
||||
@@ -634,7 +634,7 @@ Vrijednosti se kreću od 0.0 do 1.0. Niže vrijednosti su više fokusirane, viš
|
||||
|
||||
---
|
||||
|
||||
### Additional
|
||||
### Dodatno
|
||||
|
||||
Sve druge opcije koje navedete u konfiguraciji agenta će biti **direktno proslijeđene** dobavljaču kao opcije modela. Ovo vam omogućava da koristite karakteristike i parametre specifične za provajdera.
|
||||
|
||||
@@ -661,7 +661,7 @@ Pokrenite `opencode models` da vidite listu dostupnih modela.
|
||||
|
||||
---
|
||||
|
||||
## Kreirajte agente
|
||||
## Kreiranje agenata
|
||||
|
||||
Možete kreirati nove agente koristeći sljedeću naredbu:
|
||||
|
||||
@@ -679,7 +679,7 @@ Ova interaktivna komanda će:
|
||||
|
||||
---
|
||||
|
||||
## Slučajevi upotrebe
|
||||
## Primjeri upotrebe
|
||||
|
||||
Evo nekoliko uobičajenih slučajeva upotrebe različitih agenata.
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@ OpenCode CLI po defaultu pokreće [TUI](/docs/tui) kada se pokrene bez ikakvih a
|
||||
opencode
|
||||
```
|
||||
|
||||
Ali takođe prihvata komande kao što je dokumentovano na ovoj stranici. Ovo vam omogućava programsku interakciju sa OpenCode.
|
||||
Ali takođe prihvata naredbe kao što je dokumentovano na ovoj stranici. Ovo vam omogućava programsku interakciju sa OpenCode.
|
||||
|
||||
```bash
|
||||
opencode run "Explain how closures work in JavaScript"
|
||||
@@ -21,36 +21,36 @@ opencode run "Explain how closures work in JavaScript"
|
||||
|
||||
### tui
|
||||
|
||||
Pokrenite korisnički interfejs OpenCode terminala.
|
||||
Pokrenite OpenCode terminalski korisnički interfejs.
|
||||
|
||||
```bash
|
||||
opencode [project]
|
||||
```
|
||||
|
||||
#### Zastave
|
||||
#### Opcije
|
||||
|
||||
| Zastava | Kratko | Opis |
|
||||
| Opcija | Kratko | Opis |
|
||||
| ------------ | ------ | ------------------------------------------------------------------------ |
|
||||
| `--continue` | `-c` | Nastavite posljednju sesiju |
|
||||
| `--session` | `-s` | ID sesije za nastavak |
|
||||
| `--fork` | | Forkujte sesiju pri nastavku (koristiti sa `--continue` ili `--session`) |
|
||||
| `--prompt` | | Uputstvo za upotrebu |
|
||||
| `--model` | `-m` | Model za korištenje u obliku dobavljača/modela |
|
||||
| `--prompt` | | Prompt za upotrebu |
|
||||
| `--model` | `-m` | Model za korištenje u obliku provider/model |
|
||||
| `--agent` | | Agent za korištenje |
|
||||
| `--port` | | Port za slušanje na |
|
||||
| `--hostname` | | Slušajte ime hosta |
|
||||
| `--port` | | Port na kojem treba slušati |
|
||||
| `--hostname` | | Hostname na kojem treba slušati |
|
||||
|
||||
---
|
||||
|
||||
## Commands
|
||||
## Naredbe
|
||||
|
||||
OpenCode CLI takođe ima sledeće komande.
|
||||
OpenCode CLI takođe ima sljedeće naredbe.
|
||||
|
||||
---
|
||||
|
||||
### agent
|
||||
|
||||
Upravljajte agentima za OpenCode.
|
||||
Upravljajte OpenCode agentima.
|
||||
|
||||
```bash
|
||||
opencode agent [command]
|
||||
@@ -60,13 +60,13 @@ opencode agent [command]
|
||||
|
||||
### attach
|
||||
|
||||
Priključite terminal na već pokrenut OpenCode backend server pokrenut putem `serve` ili `web` komandi.
|
||||
Priključite terminal na već pokrenut OpenCode backend server pokrenut putem `serve` ili `web` naredbi.
|
||||
|
||||
```bash
|
||||
opencode attach [url]
|
||||
```
|
||||
|
||||
Ovo omogućava korištenje TUI-ja sa udaljenim OpenCode backend-om. na primjer:
|
||||
Ovo omogućava korištenje TUI-ja sa udaljenim OpenCode backend-om. Na primjer:
|
||||
|
||||
```bash
|
||||
# Start the backend server for web/mobile access
|
||||
@@ -76,11 +76,11 @@ opencode web --port 4096 --hostname 0.0.0.0
|
||||
opencode attach http://10.20.30.40:4096
|
||||
```
|
||||
|
||||
#### Zastave
|
||||
#### Opcije
|
||||
|
||||
| Zastava | Kratko | Opis |
|
||||
| Opcija | Kratko | Opis |
|
||||
| ----------- | ------ | ------------------------------------ |
|
||||
| `--dir` | | Radni direktorij za pokretanje TUI u |
|
||||
| `--dir` | | Radni direktorij za pokretanje TUI-a |
|
||||
| `--session` | `-s` | ID sesije za nastavak |
|
||||
|
||||
---
|
||||
@@ -93,7 +93,7 @@ Kreirajte novog agenta s prilagođenom konfiguracijom.
|
||||
opencode agent create
|
||||
```
|
||||
|
||||
Ova komanda će vas voditi kroz kreiranje novog agenta sa prilagođenim sistemskim promptom i konfiguracijom alata.
|
||||
Ova naredba će vas voditi kroz kreiranje novog agenta sa prilagođenim sistemskim promptom i konfiguracijom alata.
|
||||
|
||||
---
|
||||
|
||||
@@ -131,7 +131,7 @@ Kada se OpenCode pokrene, učitava dobavljače iz datoteke vjerodajnica. I ako p
|
||||
|
||||
#### list
|
||||
|
||||
Navodi sve autentifikovane dobavljače pohranjene u datoteci akreditiva.
|
||||
Navodi sve autentifikovane dobavljače pohranjene u datoteci vjerodajnica.
|
||||
|
||||
```bash
|
||||
opencode auth list
|
||||
@@ -157,7 +157,7 @@ opencode auth logout
|
||||
|
||||
### github
|
||||
|
||||
Upravljajte GitHub agentom za automatizaciju spremišta.
|
||||
Upravljajte GitHub agentom za automatizaciju repozitorija.
|
||||
|
||||
```bash
|
||||
opencode github [command]
|
||||
@@ -167,7 +167,7 @@ opencode github [command]
|
||||
|
||||
#### install
|
||||
|
||||
Instalirajte GitHub agenta u svoje spremište.
|
||||
Instalirajte GitHub agenta u svoj repozitorij.
|
||||
|
||||
```bash
|
||||
opencode github install
|
||||
@@ -179,24 +179,24 @@ Ovo postavlja neophodni tok rada GitHub Actions i vodi vas kroz proces konfigura
|
||||
|
||||
#### run
|
||||
|
||||
Pokrenite GitHub agent. Ovo se obično koristi u GitHub akcijama.
|
||||
Pokrenite GitHub agent. Ovo se obično koristi u GitHub Actions.
|
||||
|
||||
```bash
|
||||
opencode github run
|
||||
```
|
||||
|
||||
##### Zastave
|
||||
##### Opcije
|
||||
|
||||
| Zastava | Opis |
|
||||
| --------- | -------------------------------------------- |
|
||||
| `--event` | GitHub lažni događaj za pokretanje agenta za |
|
||||
| `--token` | GitHub token ličnog pristupa |
|
||||
| Opcija | Opis |
|
||||
| --------- | -------------------------------------- |
|
||||
| `--event` | GitHub mock event za pokretanje agenta |
|
||||
| `--token` | GitHub Personal Access Token |
|
||||
|
||||
---
|
||||
|
||||
### mcp
|
||||
|
||||
Upravljajte serverima protokola konteksta modela.
|
||||
Upravljajte Model Context Protocol (MCP) serverima.
|
||||
|
||||
```bash
|
||||
opencode mcp [command]
|
||||
@@ -212,7 +212,7 @@ Dodajte MCP server svojoj konfiguraciji.
|
||||
opencode mcp add
|
||||
```
|
||||
|
||||
Ova komanda će vas voditi kroz dodavanje lokalnog ili udaljenog MCP servera.
|
||||
Ova naredba će vas voditi kroz dodavanje lokalnog ili udaljenog MCP servera.
|
||||
|
||||
---
|
||||
|
||||
@@ -241,7 +241,7 @@ opencode mcp auth [name]
|
||||
```
|
||||
|
||||
Ako ne navedete ime servera, od vas će biti zatraženo da izaberete neki od dostupnih servera koji podržavaju OAuth.
|
||||
Također možete navesti servere koji podržavaju OAuth i njihov status provjere autentičnosti.
|
||||
Također možete navesti servere koji podržavaju OAuth i njihov status autentifikacije.
|
||||
|
||||
```bash
|
||||
opencode mcp auth list
|
||||
@@ -267,7 +267,7 @@ opencode mcp logout [name]
|
||||
|
||||
#### debug
|
||||
|
||||
Otklanjanje grešaka OAuth veze sa MCP serverom.
|
||||
Otklanjanje grešaka (debug) OAuth veze sa MCP serverom.
|
||||
|
||||
```bash
|
||||
opencode mcp debug <name>
|
||||
@@ -291,11 +291,11 @@ Opciono možete proslijediti ID provajdera za filtriranje modela po tom dobavlja
|
||||
opencode models anthropic
|
||||
```
|
||||
|
||||
#### Zastave
|
||||
#### Opcije
|
||||
|
||||
| Zastava | Opis |
|
||||
| Opcija | Opis |
|
||||
| ----------- | ------------------------------------------------------------------------ |
|
||||
| `--refresh` | Osvježite predmemoriju modela sa models.dev |
|
||||
| `--refresh` | Osvježite keš modela sa models.dev |
|
||||
| `--verbose` | Koristite detaljniji izlaz modela (uključuje metapodatke poput troškova) |
|
||||
|
||||
Koristite `--refresh` zastavicu da ažurirate keširanu listu modela. Ovo je korisno kada su novi modeli dodani provajderu i želite da ih vidite u OpenCode.
|
||||
@@ -308,13 +308,13 @@ opencode models --refresh
|
||||
|
||||
### run
|
||||
|
||||
Pokrenite opencode u neinteraktivnom modu tako što ćete direktno proslijediti prompt.
|
||||
Pokrenite OpenCode u neinteraktivnom modu tako što ćete direktno proslijediti prompt.
|
||||
|
||||
```bash
|
||||
opencode run [message..]
|
||||
```
|
||||
|
||||
Ovo je korisno za skriptiranje, automatizaciju ili kada želite brz odgovor bez pokretanja punog TUI-ja. Na primjer.
|
||||
Ovo je korisno za skriptiranje, automatizaciju ili kada želite brz odgovor bez pokretanja punog TUI-ja. Na primjer:
|
||||
|
||||
```bash "opencode run"
|
||||
opencode run Explain the use of context in Go
|
||||
@@ -330,11 +330,11 @@ opencode serve
|
||||
opencode run --attach http://localhost:4096 "Explain async/await in JavaScript"
|
||||
```
|
||||
|
||||
#### Zastave
|
||||
#### Opcije
|
||||
|
||||
| Zastava | Kratko | Opis |
|
||||
| Opcija | Kratko | Opis |
|
||||
| ------------ | ------ | ------------------------------------------------------------------------ |
|
||||
| `--command` | | Naredba za pokretanje, koristite poruku za args |
|
||||
| `--command` | | Naredba za pokretanje, koristite poruku za argumente |
|
||||
| `--continue` | `-c` | Nastavite posljednju sesiju |
|
||||
| `--session` | `-s` | ID sesije za nastavak |
|
||||
| `--fork` | | Forkujte sesiju pri nastavku (koristiti sa `--continue` ili `--session`) |
|
||||
@@ -344,29 +344,29 @@ opencode run --attach http://localhost:4096 "Explain async/await in JavaScript"
|
||||
| `--file` | `-f` | Fajlovi koje treba priložiti poruci |
|
||||
| `--format` | | Format: default (formatiran) ili json (sirovi JSON događaji) |
|
||||
| `--title` | | Naslov sesije (koristi skraćeni prompt ako nije navedena vrijednost) |
|
||||
| `--attach` | | Priključite na pokrenuti opencode server (npr. http://localhost:4096) |
|
||||
| `--attach` | | Priključite na pokrenuti OpenCode server (npr. http://localhost:4096) |
|
||||
| `--port` | | Port za lokalni server (zadano na nasumični port) |
|
||||
|
||||
---
|
||||
|
||||
### serve
|
||||
|
||||
Pokrenite OpenCode server bez glave za pristup API-ju. Pogledajte [server docs](/docs/server) za kompletan HTTP interfejs.
|
||||
Pokrenite OpenCode headless server za API pristup. Pogledajte [server docs](/docs/server) za kompletan HTTP interfejs.
|
||||
|
||||
```bash
|
||||
opencode serve
|
||||
```
|
||||
|
||||
Ovo pokreće HTTP server koji pruža API pristup funkcionalnosti otvorenog koda bez TUI interfejsa. Postavite `OPENCODE_SERVER_PASSWORD` da omogućite HTTP osnovnu auth (korisničko ime je zadano na `opencode`).
|
||||
Ovo pokreće HTTP server koji pruža API pristup funkcionalnosti OpenCode-a bez TUI interfejsa. Postavite `OPENCODE_SERVER_PASSWORD` da omogućite HTTP osnovnu auth (korisničko ime je zadano na `opencode`).
|
||||
|
||||
#### Zastave
|
||||
#### Opcije
|
||||
|
||||
| Zastava | Opis |
|
||||
| ------------ | ---------------------------------------------------- |
|
||||
| `--port` | Port za slušanje na |
|
||||
| `--hostname` | Ime hosta za slušanje |
|
||||
| `--mdns` | Omogući mDNS otkrivanje |
|
||||
| `--cors` | Dodatni izvor(a) pretraživača koji dozvoljavaju CORS |
|
||||
| Opcija | Opis |
|
||||
| ------------ | ----------------------------------------------------- |
|
||||
| `--port` | Port na kojem treba slušati |
|
||||
| `--hostname` | Hostname na kojem treba slušati |
|
||||
| `--mdns` | Omogući mDNS otkrivanje |
|
||||
| `--cors` | Dodatni origin(i) pretraživača koji dozvoljavaju CORS |
|
||||
|
||||
---
|
||||
|
||||
@@ -388,12 +388,12 @@ Navedite sve OpenCode sesije.
|
||||
opencode session list
|
||||
```
|
||||
|
||||
##### Zastave
|
||||
##### Opcije
|
||||
|
||||
| Zastava | Kratko | Opis |
|
||||
| ------------- | ------ | ----------------------------------------- |
|
||||
| `--max-count` | `-n` | Ograničenje na N najnovijih sesija |
|
||||
| `--format` | | Izlazni format: tablica ili json (tabela) |
|
||||
| Opcija | Kratko | Opis |
|
||||
| ------------- | ------ | -------------------------------------- |
|
||||
| `--max-count` | `-n` | Ograničenje na N najnovijih sesija |
|
||||
| `--format` | | Izlazni format: table ili json (table) |
|
||||
|
||||
---
|
||||
|
||||
@@ -405,14 +405,14 @@ Prikaži statistiku upotrebe tokena i troškova za vaše OpenCode sesije.
|
||||
opencode stats
|
||||
```
|
||||
|
||||
#### Zastave
|
||||
#### Opcije
|
||||
|
||||
| Zastava | Opis |
|
||||
| ----------- | ----------------------------------------------------------------------------------------------------------- |
|
||||
| `--days` | Prikaži statistiku za zadnjih N dana (sva vremena) |
|
||||
| `--tools` | Broj alata za prikaz (svi) |
|
||||
| `--models` | Prikaži raščlambu korištenja modela (skriveno prema zadanim postavkama). Proslijedite broj za prikaz vrha N |
|
||||
| `--project` | Filtriraj po projektu (svi projekti, prazan niz: trenutni projekt) |
|
||||
| Opcija | Opis |
|
||||
| ----------- | ---------------------------------------------------------------------------------------------------------- |
|
||||
| `--days` | Prikaži statistiku za zadnjih N dana (sva vremena) |
|
||||
| `--tools` | Broj alata za prikaz (svi) |
|
||||
| `--models` | Prikaži raščlambu korištenja modela (skriveno prema zadanim postavkama). Proslijedite broj za prikaz top N |
|
||||
| `--project` | Filtriraj po projektu (svi projekti, prazan niz: trenutni projekt) |
|
||||
|
||||
---
|
||||
|
||||
@@ -447,22 +447,22 @@ opencode import https://opncd.ai/s/abc123
|
||||
|
||||
### web
|
||||
|
||||
Pokrenite OpenCode server bez glave sa web interfejsom.
|
||||
Pokrenite OpenCode headless server sa web interfejsom.
|
||||
|
||||
```bash
|
||||
opencode web
|
||||
```
|
||||
|
||||
Ovo pokreće HTTP server i otvara web pretraživač za pristup OpenCode preko web interfejsa. Postavite `OPENCODE_SERVER_PASSWORD` da omogućite HTTP osnovnu auth (korisničko ime je zadano na `opencode`).
|
||||
Ovo pokreće HTTP server i otvara web pretraživač za pristup OpenCode-u preko web interfejsa. Postavite `OPENCODE_SERVER_PASSWORD` da omogućite HTTP osnovnu auth (korisničko ime je zadano na `opencode`).
|
||||
|
||||
#### Zastave
|
||||
#### Opcije
|
||||
|
||||
| Zastava | Opis |
|
||||
| ------------ | ---------------------------------------------------- |
|
||||
| `--port` | Port za slušanje na |
|
||||
| `--hostname` | Ime hosta za slušanje |
|
||||
| `--mdns` | Omogući mDNS otkrivanje |
|
||||
| `--cors` | Dodatni izvor(a) pretraživača koji dozvoljavaju CORS |
|
||||
| Opcija | Opis |
|
||||
| ------------ | ----------------------------------------------------- |
|
||||
| `--port` | Port na kojem treba slušati |
|
||||
| `--hostname` | Hostname na kojem treba slušati |
|
||||
| `--mdns` | Omogući mDNS otkrivanje |
|
||||
| `--cors` | Dodatni origin(i) pretraživača koji dozvoljavaju CORS |
|
||||
|
||||
---
|
||||
|
||||
@@ -474,15 +474,15 @@ Pokrenite ACP (Agent Client Protocol) server.
|
||||
opencode acp
|
||||
```
|
||||
|
||||
Ova komanda pokreće ACP server koji komunicira preko stdin/stdout koristeći nd-JSON.
|
||||
Ova naredba pokreće ACP server koji komunicira preko stdin/stdout koristeći nd-JSON.
|
||||
|
||||
#### Zastave
|
||||
#### Opcije
|
||||
|
||||
| Zastava | Opis |
|
||||
| ------------ | ------------------- |
|
||||
| `--cwd` | Radni imenik |
|
||||
| `--port` | Port za slušanje na |
|
||||
| `--hostname` | Slušajte ime hosta |
|
||||
| Opcija | Opis |
|
||||
| ------------ | --------------------------- |
|
||||
| `--cwd` | Radni direktorij |
|
||||
| `--port` | Port na kojem treba slušati |
|
||||
| `--hostname` | Hostname na kojem slušati |
|
||||
|
||||
---
|
||||
|
||||
@@ -494,12 +494,12 @@ Deinstalirajte OpenCode i uklonite sve povezane datoteke.
|
||||
opencode uninstall
|
||||
```
|
||||
|
||||
#### Zastave
|
||||
#### Opcije
|
||||
|
||||
| Zastava | Kratko | Opis |
|
||||
| Opcija | Kratko | Opis |
|
||||
| --------------- | ------ | --------------------------------------------- |
|
||||
| `--keep-config` | `-c` | Čuvajte konfiguracijske datoteke |
|
||||
| `--keep-data` | `-d` | Čuvajte podatke i snimke sesije |
|
||||
| `--keep-config` | `-c` | Sačuvajte konfiguracijske datoteke |
|
||||
| `--keep-data` | `-d` | Sačuvajte podatke i snimke sesije |
|
||||
| `--dry-run` | | Pokažite šta bi bilo uklonjeno bez uklanjanja |
|
||||
| `--force` | `-f` | Preskoči upite za potvrdu |
|
||||
|
||||
@@ -507,7 +507,7 @@ opencode uninstall
|
||||
|
||||
### upgrade
|
||||
|
||||
Ažurira opencode na najnoviju verziju ili određenu verziju.
|
||||
Ažurira OpenCode na najnoviju verziju ili određenu verziju.
|
||||
|
||||
```bash
|
||||
opencode upgrade [target]
|
||||
@@ -525,73 +525,76 @@ Za nadogradnju na određenu verziju.
|
||||
opencode upgrade v0.1.48
|
||||
```
|
||||
|
||||
#### Zastave
|
||||
#### Opcije
|
||||
|
||||
| Zastava | Kratko | Opis |
|
||||
| Opcija | Kratko | Opis |
|
||||
| ---------- | ------ | ------------------------------------------------------- |
|
||||
| `--method` | `-m` | Korišteni način instalacije; curl, npm, pnpm, bun, brew |
|
||||
|
||||
---
|
||||
|
||||
## Globalne zastave
|
||||
## Globalne opcije
|
||||
|
||||
CLI otvorenog koda uzima sljedeće globalne zastavice.
|
||||
| Zastava | Kratko | Opis
|
||||
|-------------- | ----- | ------------------------------------ |
|
||||
| `--help` | `-h` | Prikaži pomoć |
|
||||
| `--version` | `-v` | Odštampaj broj verzije |
|
||||
| `--print-logs` | | Ispis zapisnika u stderr |
|
||||
| `--log-level` | | Nivo dnevnika (DEBUG, INFO, WARN, ERROR) |
|
||||
OpenCode CLI prihvata sljedeće globalne zastavice.
|
||||
|
||||
| Opcija | Kratko | Opis |
|
||||
| -------------- | ------ | ----------------------------------------- |
|
||||
| `--help` | `-h` | Prikaži pomoć |
|
||||
| `--version` | `-v` | Ispiši broj verzije |
|
||||
| `--print-logs` | | Ispis logova u stderr |
|
||||
| `--log-level` | | Nivo logovanja (DEBUG, INFO, WARN, ERROR) |
|
||||
|
||||
---
|
||||
|
||||
## Varijable okruženja
|
||||
|
||||
OpenCode se može konfigurirati pomoću varijabli okruženja.
|
||||
| Varijabilna | Vrsta | Opis
|
||||
|------------------------------------- | ------- | ------------------------------------------------- |
|
||||
| `OPENCODE_AUTO_SHARE` | boolean | Automatski dijeli sesije |
|
||||
| `OPENCODE_GIT_BASH_PATH` | string | Putanja do Git Bash izvršne datoteke na Windows |
|
||||
| `OPENCODE_CONFIG` | string | Put do konfiguracionog fajla |
|
||||
| `OPENCODE_CONFIG_DIR` | string | Put do konfiguracijskog direktorija |
|
||||
| `OPENCODE_CONFIG_CONTENT` | string | Inline json konfiguracijski sadržaj |
|
||||
| `OPENCODE_DISABLE_AUTOUPDATE` | boolean | Onemogući automatske provjere ažuriranja |
|
||||
| `OPENCODE_DISABLE_PRUNE` | boolean | Onemogući orezivanje starih podataka |
|
||||
| `OPENCODE_DISABLE_TERMINAL_TITLE` | boolean | Onemogući automatsko ažuriranje naslova terminala |
|
||||
| `OPENCODE_PERMISSION` | string | Umetnuta json konfiguracija dozvola |
|
||||
| `OPENCODE_DISABLE_DEFAULT_PLUGINS` | boolean | Onemogući podrazumevane dodatke |
|
||||
| `OPENCODE_DISABLE_LSP_DOWNLOAD` | boolean | Onemogući automatsko preuzimanje LSP servera |
|
||||
| `OPENCODE_ENABLE_EXPERIMENTAL_MODELS` | boolean | Omogući eksperimentalne modele |
|
||||
| `OPENCODE_DISABLE_AUTOCOMPACT` | boolean | Onemogući automatsko sažimanje konteksta |
|
||||
| `OPENCODE_DISABLE_CLAUDE_CODE` | boolean | Onemogući čitanje sa `.claude` (prompt + vještine) |
|
||||
| `OPENCODE_DISABLE_CLAUDE_CODE_PROMPT` | boolean | Onemogući čitanje `~/.claude/CLAUDE.md` |
|
||||
| `OPENCODE_DISABLE_CLAUDE_CODE_SKILLS` | boolean | Onemogući učitavanje `.claude/skills` |
|
||||
| `OPENCODE_DISABLE_MODELS_FETCH` | boolean | Onemogući dohvaćanje modela iz udaljenih izvora |
|
||||
| `OPENCODE_FAKE_VCS` | string | Lažni VCS provajder za potrebe testiranja |
|
||||
| `OPENCODE_DISABLE_FILETIME_CHECK` | boolean | Onemogući provjeru vremena datoteke radi optimizacije |
|
||||
| `OPENCODE_CLIENT` | string | Identifikator klijenta (zadano na `cli`) |
|
||||
| `OPENCODE_ENABLE_EXA` | boolean | Omogući Exa alate za web pretraživanje |
|
||||
| `OPENCODE_SERVER_PASSWORD` | string | Omogući osnovnu autorizaciju za `serve`/`web` |
|
||||
| `OPENCODE_SERVER_USERNAME` | string | Poništi osnovno korisničko ime autentifikacije (zadano `opencode`) |
|
||||
| `OPENCODE_MODELS_URL` | string | Prilagođeni URL za dohvaćanje konfiguracije modela |
|
||||
|
||||
| Varijabla | Tip | Opis |
|
||||
| ------------------------------------- | ------- | ------------------------------------------------------------------ |
|
||||
| `OPENCODE_AUTO_SHARE` | boolean | Automatski dijeli sesije |
|
||||
| `OPENCODE_GIT_BASH_PATH` | string | Putanja do Git Bash izvršne datoteke na Windows-u |
|
||||
| `OPENCODE_CONFIG` | string | Putanja do konfiguracijskog fajla |
|
||||
| `OPENCODE_CONFIG_DIR` | string | Putanja do konfiguracijskog direktorija |
|
||||
| `OPENCODE_CONFIG_CONTENT` | string | Inline json konfiguracijski sadržaj |
|
||||
| `OPENCODE_DISABLE_AUTOUPDATE` | boolean | Onemogući automatske provjere ažuriranja |
|
||||
| `OPENCODE_DISABLE_PRUNE` | boolean | Onemogući brisanje (pruning) starih podataka |
|
||||
| `OPENCODE_DISABLE_TERMINAL_TITLE` | boolean | Onemogući automatsko ažuriranje naslova terminala |
|
||||
| `OPENCODE_PERMISSION` | string | Inline json konfiguracija dozvola |
|
||||
| `OPENCODE_DISABLE_DEFAULT_PLUGINS` | boolean | Onemogući podrazumijevane dodatke (plugins) |
|
||||
| `OPENCODE_DISABLE_LSP_DOWNLOAD` | boolean | Onemogući automatsko preuzimanje LSP servera |
|
||||
| `OPENCODE_ENABLE_EXPERIMENTAL_MODELS` | boolean | Omogući eksperimentalne modele |
|
||||
| `OPENCODE_DISABLE_AUTOCOMPACT` | boolean | Onemogući automatsko sažimanje konteksta |
|
||||
| `OPENCODE_DISABLE_CLAUDE_CODE` | boolean | Onemogući čitanje iz `.claude` (prompt + vještine) |
|
||||
| `OPENCODE_DISABLE_CLAUDE_CODE_PROMPT` | boolean | Onemogući čitanje `~/.claude/CLAUDE.md` |
|
||||
| `OPENCODE_DISABLE_CLAUDE_CODE_SKILLS` | boolean | Onemogući učitavanje `.claude/skills` |
|
||||
| `OPENCODE_DISABLE_MODELS_FETCH` | boolean | Onemogući dohvaćanje modela iz udaljenih izvora |
|
||||
| `OPENCODE_FAKE_VCS` | string | Lažni VCS provajder za potrebe testiranja |
|
||||
| `OPENCODE_DISABLE_FILETIME_CHECK` | boolean | Onemogući provjeru vremena datoteke radi optimizacije |
|
||||
| `OPENCODE_CLIENT` | string | Identifikator klijenta (zadano na `cli`) |
|
||||
| `OPENCODE_ENABLE_EXA` | boolean | Omogući Exa alate za web pretraživanje |
|
||||
| `OPENCODE_SERVER_PASSWORD` | string | Omogući osnovnu autentifikaciju za `serve`/`web` |
|
||||
| `OPENCODE_SERVER_USERNAME` | string | Poništi osnovno korisničko ime autentifikacije (zadano `opencode`) |
|
||||
| `OPENCODE_MODELS_URL` | string | Prilagođeni URL za dohvaćanje konfiguracije modela |
|
||||
|
||||
---
|
||||
|
||||
### Eksperimentalno
|
||||
|
||||
Ove varijable okruženja omogućavaju eksperimentalne karakteristike koje se mogu promijeniti ili ukloniti.
|
||||
| Varijabilna | Vrsta | Opis
|
||||
|----------------------------------------------- | ------- | --------------------------------------- |
|
||||
| `OPENCODE_EXPERIMENTAL` | boolean | Omogući sve eksperimentalne funkcije |
|
||||
| `OPENCODE_EXPERIMENTAL_ICON_DISCOVERY` | boolean | Omogući otkrivanje ikona |
|
||||
| `OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT` | boolean | Onemogući kopiranje pri odabiru u TUI |
|
||||
| `OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MS` | broj | Zadano vremensko ograničenje za bash komande u ms |
|
||||
| `OPENCODE_EXPERIMENTAL_OUTPUT_TOKEN_MAX` | broj | Maksimalni izlazni tokeni za LLM odgovore |
|
||||
| `OPENCODE_EXPERIMENTAL_FILEWATCHER` | boolean | Omogući praćenje datoteka za cijeli dir |
|
||||
| `OPENCODE_EXPERIMENTAL_OXFMT` | boolean | Omogući oxfmt formatter |
|
||||
| `OPENCODE_EXPERIMENTAL_LSP_TOOL` | boolean | Omogući eksperimentalni LSP alat |
|
||||
| `OPENCODE_EXPERIMENTAL_DISABLE_FILEWATCHER` | boolean | Onemogući praćenje datoteka |
|
||||
| `OPENCODE_EXPERIMENTAL_EXA` | boolean | Omogući eksperimentalne Exa funkcije |
|
||||
| `OPENCODE_EXPERIMENTAL_LSP_TY` | boolean | Omogući eksperimentalnu provjeru tipa LSP |
|
||||
| `OPENCODE_EXPERIMENTAL_MARKDOWN` | boolean | Omogući eksperimentalne Markdown funkcije |
|
||||
| `OPENCODE_EXPERIMENTAL_PLAN_MODE` | boolean | Omogući režim plana |
|
||||
|
||||
| Varijabla | Tip | Opis |
|
||||
| ----------------------------------------------- | ------- | ------------------------------------------------- |
|
||||
| `OPENCODE_EXPERIMENTAL` | boolean | Omogući sve eksperimentalne funkcije |
|
||||
| `OPENCODE_EXPERIMENTAL_ICON_DISCOVERY` | boolean | Omogući otkrivanje ikona |
|
||||
| `OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT` | boolean | Onemogući kopiranje pri odabiru u TUI |
|
||||
| `OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MS` | number | Zadano vremensko ograničenje za bash naredbe u ms |
|
||||
| `OPENCODE_EXPERIMENTAL_OUTPUT_TOKEN_MAX` | number | Maksimalni izlazni tokeni za LLM odgovore |
|
||||
| `OPENCODE_EXPERIMENTAL_FILEWATCHER` | boolean | Omogući praćenje datoteka za cijeli direktorij |
|
||||
| `OPENCODE_EXPERIMENTAL_OXFMT` | boolean | Omogući oxfmt formatter |
|
||||
| `OPENCODE_EXPERIMENTAL_LSP_TOOL` | boolean | Omogući eksperimentalni LSP alat |
|
||||
| `OPENCODE_EXPERIMENTAL_DISABLE_FILEWATCHER` | boolean | Onemogući praćenje datoteka |
|
||||
| `OPENCODE_EXPERIMENTAL_EXA` | boolean | Omogući eksperimentalne Exa funkcije |
|
||||
| `OPENCODE_EXPERIMENTAL_LSP_TY` | boolean | Omogući eksperimentalnu provjeru tipa LSP |
|
||||
| `OPENCODE_EXPERIMENTAL_MARKDOWN` | boolean | Omogući eksperimentalne Markdown funkcije |
|
||||
| `OPENCODE_EXPERIMENTAL_PLAN_MODE` | boolean | Omogući Plan mod |
|
||||
|
||||
@@ -13,7 +13,7 @@ Prilagođene komande su dodatak ugrađenim komandama kao što su `/init`, `/undo
|
||||
|
||||
---
|
||||
|
||||
## Kreirajte komandne fajlove
|
||||
## Kreiranje datoteka naredbi
|
||||
|
||||
Kreirajte markdown fajlove u direktorijumu `commands/` da definišete prilagođene komande.
|
||||
Kreiraj `.opencode/commands/test.md`:
|
||||
@@ -38,7 +38,7 @@ Koristite komandu tako što ćete upisati `/` nakon čega slijedi naziv komande.
|
||||
|
||||
---
|
||||
|
||||
## Konfiguriši
|
||||
## Konfiguracija
|
||||
|
||||
Možete dodati prilagođene komande kroz OpenCode konfiguraciju ili kreiranjem markdown datoteka u direktoriju `commands/`.
|
||||
|
||||
@@ -99,7 +99,7 @@ Ime markdown datoteke postaje ime naredbe. Na primjer, `test.md` vam omogućava
|
||||
|
||||
---
|
||||
|
||||
## Prompt config
|
||||
## Konfiguracija upita
|
||||
|
||||
Promptovi za prilagođene komande podržavaju nekoliko posebnih čuvara mjesta i sintakse.
|
||||
|
||||
@@ -190,7 +190,7 @@ Naredbe se pokreću u korijenskom direktoriju vašeg projekta i njihov izlaz pos
|
||||
|
||||
---
|
||||
|
||||
### Reference fajlova
|
||||
### Reference datoteka
|
||||
|
||||
Uključite datoteke u svoju naredbu koristeći `@` nakon čega slijedi naziv datoteke.
|
||||
|
||||
@@ -213,7 +213,7 @@ Pogledajmo detaljno opcije konfiguracije.
|
||||
|
||||
---
|
||||
|
||||
### Template
|
||||
### Šablon
|
||||
|
||||
Opcija `template` definira prompt koji će biti poslan LLM-u kada se naredba izvrši.
|
||||
|
||||
@@ -269,7 +269,7 @@ Ovo je **opciona** opcija konfiguracije. Ako nije navedeno, podrazumevano je va
|
||||
|
||||
---
|
||||
|
||||
### Subtask
|
||||
### Podzadatak
|
||||
|
||||
Koristite `subtask` boolean da prisilite naredbu da pokrene [subagent](/docs/agents/#subagents) pozivanje.
|
||||
Ovo je korisno ako želite da naredba ne zagađuje vaš primarni kontekst i da će **primorati** agenta da djeluje kao subagent,
|
||||
@@ -307,9 +307,9 @@ Ovo je **opciona** opcija konfiguracije.
|
||||
|
||||
---
|
||||
|
||||
## Ugrađene
|
||||
## Ugrađene naredbe
|
||||
|
||||
opencode uključuje nekoliko ugrađenih naredbi kao što su `/init`, `/undo`, `/redo`, `/share`, `/help`; [saznaj više](/docs/tui#commands).
|
||||
OpenCode uključuje nekoliko ugrađenih naredbi kao što su `/init`, `/undo`, `/redo`, `/share`, `/help`; [saznaj više](/docs/tui#commands).
|
||||
:::note
|
||||
Prilagođene komande mogu nadjačati ugrađene komande.
|
||||
:::
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
title: Config
|
||||
title: Konfiguracija
|
||||
description: Korištenje OpenCode JSON konfiguracije.
|
||||
---
|
||||
|
||||
@@ -25,10 +25,10 @@ OpenCode podržava i **JSON** i **JSONC** (JSON sa komentarima) formate.
|
||||
|
||||
## Lokacije
|
||||
|
||||
Možete postaviti svoju konfiguraciju na nekoliko različitih lokacija i one imaju a
|
||||
drugačiji redosled prioriteta.
|
||||
Možete postaviti svoju konfiguraciju na nekoliko različitih lokacija i one imaju drugačiji redoslijed prioriteta.
|
||||
|
||||
:::note
|
||||
Konfiguracijski fajlovi su **spojeni zajedno**, a ne zamijenjeni.
|
||||
Konfiguracijski fajlovi se **spajaju**, ne zamjenjuju.
|
||||
:::
|
||||
Konfiguracijski fajlovi se spajaju, ne zamjenjuju. Kombiniraju se postavke sa sljedećih konfiguracijskih lokacija. Kasnije konfiguracije poništavaju prethodne samo za konfliktne ključeve. Nekonfliktne postavke iz svih konfiguracija su sačuvane.
|
||||
Na primjer, ako vaša globalna konfiguracija postavlja `theme: "opencode"` i `autoupdate: true`, a vaša projektna konfiguracija postavlja `model: "anthropic/claude-sonnet-4-5"`, konačna konfiguracija će uključivati sve tri postavke.
|
||||
@@ -39,12 +39,13 @@ Na primjer, ako vaša globalna konfiguracija postavlja `theme: "opencode"` i `au
|
||||
|
||||
Izvori konfiguracije se učitavaju ovim redoslijedom (kasniji izvori poništavaju ranije):
|
||||
|
||||
1. **Udaljena konfiguracija** (od `.well-known/opencode`) - organizacione postavke
|
||||
1. **Udaljena konfiguracija** (od `.well-known/opencode`) - organizacijske postavke
|
||||
2. **Globalna konfiguracija** (`~/.config/opencode/opencode.json`) - korisničke postavke
|
||||
3. **Prilagođena konfiguracija** (`OPENCODE_CONFIG` env var) - prilagođena zaobilaženja
|
||||
3. **Prilagođena konfiguracija** (`OPENCODE_CONFIG` env var) - prilagođena preinačenja
|
||||
4. **Konfiguracija projekta** (`opencode.json` u projektu) - postavke specifične za projekat
|
||||
5. **`.opencode` direktoriji** - agenti, komande, dodaci
|
||||
6. **Inline config** (`OPENCODE_CONFIG_CONTENT` env var) - runtime nadjačava
|
||||
6. **Inline konfiguracija** (`OPENCODE_CONFIG_CONTENT` env var) - runtime preinačenja
|
||||
|
||||
To znači da konfiguracije projekta mogu nadjačati globalne zadane postavke, a globalne konfiguracije mogu nadjačati postavke udaljene organizacije.
|
||||
:::note
|
||||
Direktoriji `.opencode` i `~/.config/opencode` koriste **imena u množini** za poddirektorije: `agents/`, `commands/`, `modes/`, `plugins/`, `skills/`, `tools/` i `themes/`. Pojedinačna imena (npr. `agent/`) su također podržana za kompatibilnost unatrag.
|
||||
@@ -52,9 +53,9 @@ Izvori konfiguracije se učitavaju ovim redoslijedom (kasniji izvori poništavaj
|
||||
|
||||
---
|
||||
|
||||
### Daljinski
|
||||
### Udaljeno (Remote)
|
||||
|
||||
Organizacije mogu pružiti zadanu konfiguraciju preko `.well-known/opencode` krajnje točke. Ovo se automatski preuzima kada se autentifikujete kod provajdera koji to podržava.
|
||||
Organizacije mogu pružiti zadanu konfiguraciju preko `.well-known/opencode` krajnje tačke. Ovo se automatski preuzima kada se autentifikujete kod provajdera koji to podržava.
|
||||
Prvo se učitava udaljena konfiguracija koja služi kao osnovni sloj. Svi ostali izvori konfiguracije (globalni, projektni) mogu nadjačati ove zadane postavke.
|
||||
Na primjer, ako vaša organizacija nudi MCP servere koji su po defaultu onemogućeni:
|
||||
|
||||
@@ -86,14 +87,14 @@ Možete omogućiti određene servere u vašoj lokalnoj konfiguraciji:
|
||||
|
||||
---
|
||||
|
||||
### Global
|
||||
### Globalno
|
||||
|
||||
Postavite svoju globalnu OpenCode konfiguraciju u `~/.config/opencode/opencode.json`. Koristite globalnu konfiguraciju za korisničke preferencije kao što su teme, provajderi ili veze tipki.
|
||||
Globalna konfiguracija poništava zadane postavke udaljene organizacije.
|
||||
|
||||
---
|
||||
|
||||
### Project
|
||||
### Projekt
|
||||
|
||||
Dodajte `opencode.json` u korijen projekta. Konfiguracija projekta ima najveći prioritet među standardnim konfiguracijskim datotekama - ona nadjačava globalne i udaljene konfiguracije.
|
||||
:::tip
|
||||
@@ -104,7 +105,7 @@ Ovo je također sigurno provjeriti u Git i koristi istu shemu kao globalna.
|
||||
|
||||
---
|
||||
|
||||
### Custom config
|
||||
### Prilagođena konfiguracija
|
||||
|
||||
Navedite prilagođenu putanju konfiguracijske datoteke koristeći varijablu okruženja `OPENCODE_CONFIG`.
|
||||
|
||||
@@ -117,12 +118,9 @@ Prilagođena konfiguracija se učitava između globalne i projektne konfiguracij
|
||||
|
||||
---
|
||||
|
||||
### Custom directory
|
||||
### Prilagođeni direktorij
|
||||
|
||||
Navedite prilagođeni konfiguracijski direktorij koristeći `OPENCODE_CONFIG_DIR`
|
||||
varijabla okruženja. U ovom direktoriju će se tražiti agenti, komande,
|
||||
modove i dodatke baš kao standardni `.opencode` direktorij, i trebali bi
|
||||
prate istu strukturu.
|
||||
Navedite prilagođeni konfiguracijski direktorij koristeći `OPENCODE_CONFIG_DIR` varijablu okruženja. U ovom direktoriju će se tražiti agenti, komande, modovi i dodaci baš kao standardni `.opencode` direktorij, i trebali bi pratiti istu strukturu.
|
||||
|
||||
```bash
|
||||
export OPENCODE_CONFIG_DIR=/path/to/my/config-directory
|
||||
@@ -133,10 +131,10 @@ Prilagođeni direktorij se učitava nakon direktorija globalne konfiguracije i `
|
||||
|
||||
---
|
||||
|
||||
## Shema
|
||||
## Šema
|
||||
|
||||
Konfiguracijski fajl ima šemu koja je definirana u [**`opencode.ai/config.json`**](https://opencode.ai/config.json).
|
||||
Vaš uređivač bi trebao biti u mogućnosti da potvrdi i autodovršava na osnovu šeme.
|
||||
Vaš editor bi trebao biti u mogućnosti da validira i autodovršava na osnovu šeme.
|
||||
|
||||
---
|
||||
|
||||
@@ -162,13 +160,13 @@ Dostupne opcije:
|
||||
- `scroll_acceleration.enabled` - Omogući ubrzanje skrolovanja u macOS stilu. **Ima prednost nad `scroll_speed`.**
|
||||
- `scroll_speed` - Prilagođeni množitelj brzine pomicanja (podrazumevano: `3`, minimalno: `1`). Zanemareno ako je `scroll_acceleration.enabled` `true`.
|
||||
- `diff_style` - Kontrola prikaza razlike. `"auto"` se prilagođava širini terminala, `"stacked"` uvijek prikazuje jednu kolonu.
|
||||
[Ovdje saznajte više o korištenju TUI](/docs/tui).
|
||||
[Saznajte više o korištenju TUI](/docs/tui) ovdje.
|
||||
|
||||
---
|
||||
|
||||
### Server
|
||||
|
||||
Možete konfigurirati postavke servera za komande `opencode serve` i `opencode web` putem opcije `server`.
|
||||
Možete konfigurirati postavke servera za naredbe `opencode serve` i `opencode web` putem opcije `server`.
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -186,15 +184,15 @@ Možete konfigurirati postavke servera za komande `opencode serve` i `opencode w
|
||||
Dostupne opcije:
|
||||
|
||||
- `port` - Port za slušanje.
|
||||
- `hostname` - Ime hosta za slušanje. Kada je `mdns` omogućen i nije postavljeno ime hosta, podrazumevano je `0.0.0.0`.
|
||||
- `mdns` - Omogući otkrivanje mDNS usluge. Ovo omogućava drugim uređajima na mreži da otkriju vaš OpenCode server.
|
||||
- `mdnsDomain` - Prilagođeno ime domene za mDNS uslugu. Zadano je `opencode.local`. Korisno za pokretanje više instanci na istoj mreži.
|
||||
- `cors` - Dodatni izvori koji omogućavaju CORS kada koristite HTTP server iz klijenta baziranog na pretraživaču. Vrijednosti moraju biti punog porijekla (šema + host + opcijski port), npr. `https://app.example.com`.
|
||||
- `hostname` - Hostname za slušanje. Kada je `mdns` omogućen i nije postavljeno ime hosta, podrazumevano je `0.0.0.0`.
|
||||
- `mdns` - Omogući mDNS otkrivanje servisa. Ovo omogućava drugim uređajima na mreži da otkriju vaš OpenCode server.
|
||||
- `mdnsDomain` - Prilagođeno ime domene za mDNS servis. Zadano je `opencode.local`. Korisno za pokretanje više instanci na istoj mreži.
|
||||
- `cors` - Dodatni origini koji omogućavaju CORS kada koristite HTTP server iz klijenta baziranog na pretraživaču. Vrijednosti moraju biti puni origin (shema + host + opcijski port), npr. `https://app.example.com`.
|
||||
[Saznajte više o serveru](/docs/server) ovdje.
|
||||
|
||||
---
|
||||
|
||||
### Tools
|
||||
### Alati
|
||||
|
||||
Možete upravljati alatima koje LLM može koristiti putem opcije `tools`.
|
||||
|
||||
@@ -244,7 +242,7 @@ Opcije provajdera mogu uključivati `timeout` i `setCacheKey`:
|
||||
|
||||
- `timeout` - Vrijeme čekanja zahtjeva u milisekundama (podrazumevano: 300000). Postavite na `false` da onemogućite.
|
||||
- `setCacheKey` - Osigurajte da je ključ keš memorije uvijek postavljen za određenog provajdera.
|
||||
Također možete konfigurirati [lokalni modeli](/docs/models#local). [Saznajte više](/docs/models).
|
||||
Također možete konfigurirati [lokalne modele](/docs/models#local). [Saznajte više](/docs/models).
|
||||
|
||||
---
|
||||
|
||||
@@ -272,8 +270,8 @@ Amazon Bedrock podržava konfiguraciju specifičnu za AWS:
|
||||
```
|
||||
|
||||
- `region` - AWS regija za Bedrock (zadano na `AWS_REGION` env var ili `us-east-1`)
|
||||
- `profile` - AWS imenovan profil od `~/.aws/credentials` (podrazumevano na `AWS_PROFILE` env var)
|
||||
- `endpoint` - URL prilagođene krajnje tačke za VPC krajnje tačke. Ovo je pseudonim za generičku opciju `baseURL` koristeći terminologiju specifičnu za AWS. Ako su oba navedena, `endpoint` ima prednost.
|
||||
- `profile` - AWS imenovani profil iz `~/.aws/credentials` (zadano na `AWS_PROFILE` env var)
|
||||
- `endpoint` - URL prilagođene krajnje tačke za VPC krajnje tačke. Ovo je alias za generičku opciju `baseURL` koristeći terminologiju specifičnu za AWS. Ako su oba navedena, `endpoint` ima prednost.
|
||||
:::note
|
||||
Tokeni nosioca (`AWS_BEARER_TOKEN_BEDROCK` ili `/connect`) imaju prednost nad autentifikacijom zasnovanom na profilu. Pogledajte [prednost autentifikacije](/docs/providers#authentication-precedence) za detalje.
|
||||
:::
|
||||
@@ -281,7 +279,7 @@ Amazon Bedrock podržava konfiguraciju specifičnu za AWS:
|
||||
|
||||
---
|
||||
|
||||
### Theme
|
||||
### Tema
|
||||
|
||||
Možete konfigurirati temu koju želite koristiti u svojoj OpenCode konfiguraciji putem opcije `theme`.
|
||||
|
||||
@@ -333,7 +331,7 @@ Možete postaviti zadanog agenta koristeći opciju `default_agent`. Ovo određuj
|
||||
}
|
||||
```
|
||||
|
||||
Zadani agent mora biti primarni agent (ne podagent). Ovo može biti ugrađeni agent kao što je `"build"` ili `"plan"`, ili [prilagođeni agent](/docs/agents) koji ste definirali. Ako navedeni agent ne postoji ili je subagent, OpenCode će se vratiti na `"build"` s upozorenjem.
|
||||
Zadani agent mora biti primarni agent (ne podagent). Ovo može biti ugrađeni agent kao što je `"build"` ili `"plan"`, ili [prilagođeni agent](/docs/agents) koji ste definirali. Ako navedeni agent ne postoji ili je podagent, OpenCode će se vratiti na `"build"` s upozorenjem.
|
||||
Ova postavka se primjenjuje na sva sučelja: TUI, CLI (`opencode run`), desktop aplikaciju i GitHub Action.
|
||||
|
||||
---
|
||||
@@ -349,18 +347,18 @@ Možete konfigurirati funkciju [share](/docs/share) putem opcije `share`.
|
||||
}
|
||||
```
|
||||
|
||||
Ovo traje:
|
||||
Ovo prihvata:
|
||||
|
||||
- `"manual"` - Dozvoli ručno dijeljenje putem komandi (podrazumevano)
|
||||
- `"manual"` - Dozvoli ručno dijeljenje putem naredbi (podrazumevano)
|
||||
- `"auto"` - Automatski dijelite nove razgovore
|
||||
- `"disabled"` - Onemogući dijeljenje u potpunosti
|
||||
Podrazumevano, dijeljenje je postavljeno na ručni način rada gdje trebate eksplicitno dijeliti razgovore pomoću naredbe `/share`.
|
||||
|
||||
---
|
||||
|
||||
### Command
|
||||
### Naredbe
|
||||
|
||||
Možete konfigurirati prilagođene komande za ponavljanje zadataka putem opcije `command`.
|
||||
Možete konfigurirati prilagođene naredbe za ponavljanje zadataka putem opcije `command`.
|
||||
|
||||
```jsonc title="opencode.jsonc"
|
||||
{
|
||||
@@ -380,13 +378,13 @@ Možete konfigurirati prilagođene komande za ponavljanje zadataka putem opcije
|
||||
}
|
||||
```
|
||||
|
||||
Također možete definirati komande koristeći markdown fajlove u `~/.config/opencode/commands/` ili `.opencode/commands/`. [Saznajte više ovdje](/docs/commands).
|
||||
Također možete definirati naredbe koristeći markdown fajlove u `~/.config/opencode/commands/` ili `.opencode/commands/`. [Saznajte više ovdje](/docs/commands).
|
||||
|
||||
---
|
||||
|
||||
### Keybinds
|
||||
### Prečice tipki
|
||||
|
||||
Možete prilagoditi svoje veze ključeva putem opcije `keybinds`.
|
||||
Možete prilagoditi svoje veze tipki putem opcije `keybinds`.
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -415,7 +413,7 @@ Imajte na umu da ovo funkcionira samo ako nije instalirano pomoću upravitelja p
|
||||
|
||||
---
|
||||
|
||||
### Formatters
|
||||
### Formateri
|
||||
|
||||
Možete konfigurirati formatere koda putem opcije `formatter`.
|
||||
|
||||
@@ -437,13 +435,13 @@ Možete konfigurirati formatere koda putem opcije `formatter`.
|
||||
}
|
||||
```
|
||||
|
||||
[Saznajte više o formatterima](/docs/formatters) ovdje.
|
||||
[Saznajte više o formaterima](/docs/formatters) ovdje.
|
||||
|
||||
---
|
||||
|
||||
### Dozvole
|
||||
|
||||
Prema zadanim postavkama, opencode **dopušta sve operacije** bez potrebe za eksplicitnim dopuštenjem. Ovo možete promijeniti koristeći opciju `permission`.
|
||||
Prema zadanim postavkama, OpenCode **dopušta sve operacije** bez potrebe za eksplicitnim dopuštenjem. Ovo možete promijeniti koristeći opciju `permission`.
|
||||
Na primjer, da osigurate da alati `edit` i `bash` zahtijevaju odobrenje korisnika:
|
||||
|
||||
```json title="opencode.json"
|
||||
@@ -456,11 +454,11 @@ Na primjer, da osigurate da alati `edit` i `bash` zahtijevaju odobrenje korisnik
|
||||
}
|
||||
```
|
||||
|
||||
[Ovdje saznajte više o ](/docs/permissions) dozvolama.
|
||||
[Saznajte više o dozvolama](/docs/permissions) ovdje.
|
||||
|
||||
---
|
||||
|
||||
### Compaction
|
||||
### Sažimanje
|
||||
|
||||
Možete kontrolirati ponašanje sažimanja konteksta putem opcije `compaction`.
|
||||
|
||||
@@ -479,7 +477,7 @@ Možete kontrolirati ponašanje sažimanja konteksta putem opcije `compaction`.
|
||||
|
||||
---
|
||||
|
||||
### Watcher
|
||||
### Promatrač (Watcher)
|
||||
|
||||
Možete konfigurirati obrasce ignoriranja promatrača datoteka putem opcije `watcher`.
|
||||
|
||||
@@ -511,7 +509,7 @@ Možete konfigurirati MCP servere koje želite koristiti putem opcije `mcp`.
|
||||
|
||||
---
|
||||
|
||||
### Extras
|
||||
### Dodaci
|
||||
|
||||
[Plugins](/docs/plugins) proširuju OpenCode sa prilagođenim alatima, kukicama i integracijama.
|
||||
Postavite datoteke dodataka u `.opencode/plugins/` ili `~/.config/opencode/plugins/`. Također možete učitati dodatke iz npm-a preko opcije `plugin`.
|
||||
@@ -538,8 +536,7 @@ Možete konfigurirati upute za model koji koristite putem opcije `instructions`.
|
||||
}
|
||||
```
|
||||
|
||||
Ovo uzima niz putanja i uzoraka globusa do datoteka instrukcija. [Saznajte više
|
||||
o pravilima ovdje](/docs/rules).
|
||||
Ovo uzima niz putanja i glob uzoraka do datoteka instrukcija. [Saznajte više o pravilima ovdje](/docs/rules).
|
||||
|
||||
---
|
||||
|
||||
@@ -560,7 +557,7 @@ Možete onemogućiti dobavljače koji se automatski učitavaju preko opcije `dis
|
||||
Opcija `disabled_providers` prihvata niz ID-ova provajdera. Kada je provajder onemogućen:
|
||||
|
||||
- Neće se učitati čak i ako su varijable okruženja postavljene.
|
||||
- Neće se učitati čak i ako su API ključevi konfigurirani putem `/connect` komande.
|
||||
- Neće se učitati čak i ako su API ključevi konfigurirani putem `/connect` naredbe.
|
||||
- Modeli dobavljača se neće pojaviti na listi za odabir modela.
|
||||
|
||||
---
|
||||
@@ -576,7 +573,7 @@ Možete odrediti listu dozvoljenih dobavljača putem opcije `enabled_providers`.
|
||||
}
|
||||
```
|
||||
|
||||
Ovo je korisno kada želite da ograničite OpenCode da koristi samo određene provajdere umesto da ih onemogućavate jednog po jednog.
|
||||
Ovo je korisno kada želite da ograničite OpenCode da koristi samo određene provajdere umjesto da ih onemogućavate jednog po jednog.
|
||||
:::note
|
||||
`disabled_providers` ima prioritet nad `enabled_providers`.
|
||||
:::
|
||||
@@ -607,7 +604,7 @@ Možete koristiti zamjenu varijabli u vašim konfiguracijskim datotekama da bist
|
||||
|
||||
---
|
||||
|
||||
### Env vars
|
||||
### Varijable okruženja
|
||||
|
||||
Koristite `{env:VARIABLE_NAME}` za zamjenu varijabli okruženja:
|
||||
|
||||
@@ -630,7 +627,7 @@ Ako varijabla okruženja nije postavljena, bit će zamijenjena praznim nizom.
|
||||
|
||||
---
|
||||
|
||||
### Fajlovi
|
||||
### Datoteke
|
||||
|
||||
Koristite `{file:path/to/file}` da zamijenite sadržaj fajla:
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
title: Custom Tools
|
||||
title: Prilagođeni alati
|
||||
description: Kreirajte alate koje LLM može pozvati u otvorenom kodu.
|
||||
---
|
||||
|
||||
@@ -133,7 +133,7 @@ Koristite `context.worktree` za korijen git radnog stabla.
|
||||
|
||||
## Primjeri
|
||||
|
||||
### Napišite alat u Python-u
|
||||
### Pisanje alata u Python-u
|
||||
|
||||
Možete pisati svoje alate na bilo kom jeziku koji želite. Evo primjera koji zbraja dva broja koristeći Python.
|
||||
Prvo kreirajte alat kao Python skriptu:
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
title: Enterprise
|
||||
title: Za preduzeća
|
||||
description: Sigurno korištenje OpenCode u vašoj organizaciji.
|
||||
---
|
||||
|
||||
@@ -19,7 +19,7 @@ Da započnete s OpenCode Enterprise:
|
||||
|
||||
---
|
||||
|
||||
## Trial
|
||||
## Proba
|
||||
|
||||
OpenCode je otvorenog koda i ne pohranjuje vaš kod niti kontekstualne podatke, tako da vaši developeri mogu jednostavno [započeti](/docs/) i provesti probu.
|
||||
|
||||
@@ -60,19 +60,19 @@ Preporučujemo da ovo onemogućite tokom probe.
|
||||
|
||||
---
|
||||
|
||||
## Pricing
|
||||
## Cijene
|
||||
|
||||
Koristimo model naplate po sjedištu za OpenCode Enterprise. Ako imate vlastiti LLM gateway, ne naplaćujemo korištene tokene. Za više detalja o cijenama i opcijama implementacije, **<a href={email}>kontaktirajte nas</a>**.
|
||||
|
||||
---
|
||||
|
||||
## Deployment
|
||||
## Postavljanje
|
||||
|
||||
Nakon što završite probni period i spremni ste koristiti OpenCode u svojoj organizaciji, možete **<a href={email}>kontaktirati nas</a>** da razgovaramo o cijenama i opcijama implementacije.
|
||||
|
||||
---
|
||||
|
||||
### Central Config
|
||||
### Centralna konfiguracija
|
||||
|
||||
Možemo postaviti OpenCode da koristi jednu centralnu konfiguraciju za cijelu organizaciju.
|
||||
|
||||
@@ -96,7 +96,7 @@ Također možete onemogućiti sve druge AI provajdere, čime osiguravate da svi
|
||||
|
||||
---
|
||||
|
||||
### Self-hosting
|
||||
### Samostalno hostovanje
|
||||
|
||||
Iako preporučujemo onemogućavanje share stranica kako biste osigurali da podaci nikada ne napuštaju vašu organizaciju, možemo vam pomoći i da ih samostalno hostujete na vlastitoj infrastrukturi.
|
||||
|
||||
@@ -104,17 +104,17 @@ Ovo je trenutno na našoj mapi puta. Ako ste zainteresovani, **<a href={email}>j
|
||||
|
||||
---
|
||||
|
||||
## FAQ
|
||||
## Često postavljana pitanja
|
||||
|
||||
<details>
|
||||
<summary>What is OpenCode Enterprise?</summary>
|
||||
<summary>Šta je OpenCode Enterprise?</summary>
|
||||
|
||||
OpenCode Enterprise je za organizacije koje žele osigurati da njihov kod i podaci nikada ne napuštaju njihovu infrastrukturu. To omogućava centralizovana konfiguracija koja se integriše s vašim SSO-om i internim AI gateway-om.
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>How do I get started with OpenCode Enterprise?</summary>
|
||||
<summary>Kako započeti s OpenCode Enterprise?</summary>
|
||||
|
||||
Jednostavno započnite internu probu sa svojim timom. OpenCode po defaultu ne pohranjuje vaš kod ni kontekstualne podatke, što olakšava početak.
|
||||
|
||||
@@ -123,21 +123,21 @@ Zatim **<a href={email}>kontaktirajte nas</a>** da razgovaramo o cijenama i opci
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>How does enterprise pricing work?</summary>
|
||||
<summary>Kako funkcionišu enterprise cijene?</summary>
|
||||
|
||||
Nudimo enterprise cijene po sjedištu. Ako imate vlastiti LLM gateway, ne naplaćujemo korištene tokene. Za više detalja, **<a href={email}>kontaktirajte nas</a>** za prilagođenu ponudu prema potrebama vaše organizacije.
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>Is my data secure with OpenCode Enterprise?</summary>
|
||||
<summary>Jesu li moji podaci sigurni uz OpenCode Enterprise?</summary>
|
||||
|
||||
Da. OpenCode ne pohranjuje vaš kod niti kontekstualne podatke. Sva obrada se odvija lokalno ili putem direktnih API poziva vašem AI provajderu. Uz centralnu konfiguraciju i SSO integraciju, vaši podaci ostaju sigurni unutar infrastrukture vaše organizacije.
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>Can we use our own private NPM registry?</summary>
|
||||
<summary>Možemo li koristiti vlastiti privatni NPM registar?</summary>
|
||||
|
||||
OpenCode podržava privatne npm registre kroz Bunovu izvornu podršku za `.npmrc` datoteku. Ako vaša organizacija koristi privatni registar, kao što je JFrog Artifactory, Nexus ili slično, osigurajte da su developeri autentifikovani prije pokretanja OpenCode.
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
title: Formatters
|
||||
title: Formateri
|
||||
description: OpenCode koristi formatere specifične za jezik.
|
||||
---
|
||||
|
||||
@@ -7,7 +7,7 @@ OpenCode automatski formatira datoteke nakon što su napisane ili uređene pomo
|
||||
|
||||
---
|
||||
|
||||
## Ugrađeno
|
||||
## Ugrađeni
|
||||
|
||||
OpenCode dolazi sa nekoliko ugrađenih formatera za popularne jezike i okvire. Ispod je lista formatera, podržanih ekstenzija datoteka i naredbi ili opcija konfiguracije koje su mu potrebne.
|
||||
| Formatter | Ekstenzije | Zahtjevi
|
||||
@@ -49,7 +49,7 @@ Kada OpenCode piše ili uređuje datoteku, on:
|
||||
|
||||
---
|
||||
|
||||
## Konfiguriši
|
||||
## Konfiguracija
|
||||
|
||||
Možete prilagoditi formatere kroz `formatter` odjeljak u vašoj OpenCode konfiguraciji.
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@ OpenCode se integriše sa vašim GitHub tokovom rada. Spomenite `/opencode` ili
|
||||
|
||||
---
|
||||
|
||||
## Karakteristike
|
||||
## Funkcije
|
||||
|
||||
- **Problemi trijaže**: Zamolite OpenCode da ispita problem i objasni vam ga.
|
||||
- **Popravi i implementiraj**: Zamolite OpenCode da popravi problem ili implementira funkciju. I radit će u novoj poslovnici i dostavljati PR sa svim promjenama.
|
||||
@@ -244,7 +244,7 @@ Za `issues` događaje, `prompt` unos je **potreban** jer nema komentara za izvla
|
||||
|
||||
---
|
||||
|
||||
## Prilagođene upite
|
||||
## Prilagođeni upiti
|
||||
|
||||
Zaobiđite zadani prompt da biste prilagodili ponašanje OpenCode za vaš tok posla.
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@ Ovdje koristimo CI/CD komponentu kreiranu u zajednici za OpenCode — [nagyv/git
|
||||
|
||||
---
|
||||
|
||||
### Karakteristike
|
||||
### Funkcije
|
||||
|
||||
- **Koristite prilagođenu konfiguraciju po poslu**: Konfigurirajte OpenCode s prilagođenim konfiguracijskim direktorijem, na primjer `./config/#custom-directory` da omogućite ili onemogućite funkcionalnost po OpenCode pozivanju.
|
||||
- **Minimalno podešavanje**: CI komponenta postavlja OpenCode u pozadini, samo trebate kreirati OpenCode konfiguraciju i početnu prompt.
|
||||
@@ -49,7 +49,7 @@ Spomenite `@opencode` u komentaru i OpenCode će izvršiti zadatke unutar vašeg
|
||||
|
||||
---
|
||||
|
||||
### Karakteristike
|
||||
### Funkcije
|
||||
|
||||
- **Problemi trijaže**: Zamolite OpenCode da ispita problem i objasni vam ga.
|
||||
- **Popravi i implementiraj**: Zamolite OpenCode da popravi problem ili implementira funkciju.
|
||||
@@ -74,7 +74,7 @@ Pogledajte [**GitLab dokumente**](https://docs.gitlab.com/user/duo_agent_platfor
|
||||
|
||||
<details>
|
||||
|
||||
<summary>Flow configuration</summary>
|
||||
<summary>Konfiguracija toka</summary>
|
||||
|
||||
```yaml
|
||||
image: node:22-slim
|
||||
|
||||
@@ -7,7 +7,7 @@ OpenCode se integriše sa VS kodom, Cursor-om ili bilo kojim IDE-om koji podrža
|
||||
|
||||
---
|
||||
|
||||
## Upotreba
|
||||
## Korištenje
|
||||
|
||||
- **Brzo pokretanje**: Koristite `Cmd+Esc` (Mac) ili `Ctrl+Esc` (Windows/Linux) da otvorite OpenCode u prikazu podijeljenog terminala ili fokusirajte postojeću terminalsku sesiju ako je već pokrenuta.
|
||||
- **Nova sesija**: Koristite `Cmd+Shift+Esc` (Mac) ili `Ctrl+Shift+Esc` (Windows/Linux) da započnete novu OpenCode terminalsku sesiju, čak i ako je ona već otvorena. Takođe možete kliknuti na dugme OpenCode u korisničkom sučelju.
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
---
|
||||
title: Intro
|
||||
description: Započnite s OpenCode.
|
||||
title: Uvod
|
||||
description: Započnite sa OpenCode.
|
||||
---
|
||||
|
||||
import { Tabs, TabItem } from "@astrojs/starlight/components"
|
||||
import config from "../../../../config.mjs"
|
||||
export const console = config.console
|
||||
|
||||
[**OpenCode**](/) je agent za AI kodiranje otvorenog koda. Dostupan je kao interfejs baziran na terminalu, desktop aplikacija ili IDE ekstenzija.
|
||||
[**OpenCode**](/) je AI agent za kodiranje otvorenog koda. Dostupan je kao interfejs baziran na terminalu, desktop aplikacija ili IDE ekstenzija.
|
||||

|
||||
Hajde da počnemo.
|
||||
|
||||
@@ -18,17 +18,17 @@ Hajde da počnemo.
|
||||
Da biste koristili OpenCode u svom terminalu, trebat će vam:
|
||||
|
||||
1. Moderan emulator terminala kao što su:
|
||||
- [WezTerm](https://wezterm.org), multi-platforma
|
||||
- [Alacritty](https://alacritty.org), više platforma
|
||||
- [WezTerm](https://wezterm.org), više platformi
|
||||
- [Alacritty](https://alacritty.org), više platformi
|
||||
- [Ghostty](https://ghostty.org), Linux i macOS
|
||||
- [Kitty](https://sw.kovidgoyal.net/kitty/), Linux i macOS
|
||||
2. API ključevi za LLM provajdere koje želite koristiti.
|
||||
|
||||
---
|
||||
|
||||
## Instaliraj
|
||||
## Instalacija
|
||||
|
||||
Najlakši način za instaliranje OpenCode je putem instalacione skripte.
|
||||
Najlakši način za instaliranje OpenCode je putem instalacijske skripte.
|
||||
|
||||
```bash
|
||||
curl -fsSL https://opencode.ai/install | bash
|
||||
@@ -36,7 +36,7 @@ curl -fsSL https://opencode.ai/install | bash
|
||||
|
||||
Također ga možete instalirati pomoću sljedećih naredbi:
|
||||
|
||||
- **Korišćenje Node.js**
|
||||
- **Korištenje Node.js**
|
||||
|
||||
<Tabs>
|
||||
|
||||
@@ -70,7 +70,7 @@ Također ga možete instalirati pomoću sljedećih naredbi:
|
||||
|
||||
</Tabs>
|
||||
|
||||
- **Korišćenje Homebrew-a na macOS-u i Linux-u**
|
||||
- **Korištenje Homebrew-a na macOS-u i Linux-u**
|
||||
|
||||
```bash
|
||||
brew install anomalyco/tap/opencode
|
||||
@@ -78,7 +78,7 @@ Također ga možete instalirati pomoću sljedećih naredbi:
|
||||
|
||||
> Preporučujemo korištenje OpenCode tap za najnovija izdanja. Službenu formulu `brew install opencode` održava Homebrew tim i ažurira se rjeđe.
|
||||
|
||||
- **Korišćenje Parua na Arch Linuxu**
|
||||
- **Korištenje Parua na Arch Linuxu**
|
||||
|
||||
```bash
|
||||
paru -S opencode-bin
|
||||
@@ -87,16 +87,16 @@ Također ga možete instalirati pomoću sljedećih naredbi:
|
||||
#### Windows
|
||||
|
||||
:::tip[Preporučeno: Koristite WSL]
|
||||
Za najbolje iskustvo na Windows-u preporučujemo korištenje [Windows Subsystem for Linux (WSL)](/docs/windows-wsl). Pruža bolje performanse i potpunu kompatibilnost sa OpenCode karakteristikama.
|
||||
Za najbolje iskustvo na Windows-u preporučujemo korištenje [Windows Subsystem for Linux (WSL)](/docs/windows-wsl). Pruža bolje performanse i potpunu kompatibilnost sa OpenCode funkcijama.
|
||||
:::
|
||||
|
||||
- **Upotreba Chocolatey-a**
|
||||
- **Korištenje Chocolatey-a**
|
||||
|
||||
```bash
|
||||
choco install opencode
|
||||
```
|
||||
|
||||
- **Upotreba Scoop-a**
|
||||
- **Korištenje Scoop-a**
|
||||
|
||||
```bash
|
||||
scoop install opencode
|
||||
@@ -108,13 +108,13 @@ Za najbolje iskustvo na Windows-u preporučujemo korištenje [Windows Subsystem
|
||||
npm install -g opencode-ai
|
||||
```
|
||||
|
||||
- **Korišćenje Mise**
|
||||
- **Korištenje Mise**
|
||||
|
||||
```bash
|
||||
mise use -g github:anomalyco/opencode
|
||||
```
|
||||
|
||||
- **Korišćenje Dockera**
|
||||
- **Korištenje Dockera**
|
||||
|
||||
```bash
|
||||
docker run -it --rm ghcr.io/anomalyco/opencode
|
||||
@@ -125,12 +125,11 @@ Također možete preuzeti binarnu datoteku iz [Releases](https://github.com/anom
|
||||
|
||||
---
|
||||
|
||||
## Konfiguriši
|
||||
## Konfiguracija
|
||||
|
||||
Uz OpenCode možete koristiti bilo kojeg LLM provajdera tako što ćete konfigurirati njihove API ključeve.
|
||||
Ako ste tek počeli koristiti LLM provajdere, preporučujemo korištenje [OpenCode Zen](/docs/zen).
|
||||
To je kurirana lista modela koji su testirani i verifikovani od strane OpenCode
|
||||
tim.
|
||||
To je kurirana lista modela koji su testirani i verifikovani od strane OpenCode tima.
|
||||
|
||||
1. Pokrenite naredbu `/connect` u TUI-u, odaberite opencode i idite na [opencode.ai/auth](https://opencode.ai/auth).
|
||||
|
||||
@@ -152,10 +151,9 @@ Alternativno, možete odabrati jednog od drugih provajdera. [Saznajte više](/do
|
||||
|
||||
---
|
||||
|
||||
## Inicijaliziraj
|
||||
## Inicijalizacija
|
||||
|
||||
Sada kada ste konfigurisali provajdera, možete se kretati do projekta koji
|
||||
na čemu želite da radite.
|
||||
Sada kada ste konfigurisali provajdera, možete se kretati do projekta na kojem želite raditi.
|
||||
|
||||
```bash
|
||||
cd /path/to/project
|
||||
@@ -173,26 +171,22 @@ Zatim inicijalizirajte OpenCode za projekat pokretanjem sljedeće naredbe.
|
||||
/init
|
||||
```
|
||||
|
||||
Ovo će omogućiti OpenCode da analizira vaš projekat i kreira `AGENTS.md` fajl u njemu
|
||||
korijen projekta.
|
||||
Ovo će omogućiti OpenCode da analizira vaš projekat i kreira `AGENTS.md` fajl u korijenu projekta.
|
||||
:::tip
|
||||
Trebali biste urezati datoteku `AGENTS.md` vašeg projekta u Git.
|
||||
Trebali biste komitovati datoteku `AGENTS.md` vašeg projekta u Git.
|
||||
:::
|
||||
Ovo pomaže OpenCode da razumije strukturu projekta i obrasce kodiranja
|
||||
korišteno.
|
||||
Ovo pomaže OpenCode da razumije strukturu projekta i obrasce kodiranja koji se koriste.
|
||||
|
||||
---
|
||||
|
||||
## Upotreba
|
||||
## Korištenje
|
||||
|
||||
Sada ste spremni da koristite OpenCode za rad na svom projektu. Slobodno pitajte
|
||||
bilo šta!
|
||||
Ako ste novi u korištenju agenta za AI kodiranje, evo nekoliko primjera koji bi mogli
|
||||
pomoć.
|
||||
Sada ste spremni da koristite OpenCode za rad na svom projektu. Slobodno pitajte bilo šta!
|
||||
Ako ste novi u korištenju agenta za AI kodiranje, evo nekoliko primjera koji bi mogli pomoći.
|
||||
|
||||
---
|
||||
|
||||
### Postavljajte pitanja
|
||||
### Postavljanje pitanja
|
||||
|
||||
Možete zamoliti OpenCode da vam objasni kodnu bazu.
|
||||
:::tip
|
||||
@@ -207,13 +201,12 @@ Ovo je korisno ako postoji dio kodne baze na kojem niste radili.
|
||||
|
||||
---
|
||||
|
||||
### Dodajte karakteristike
|
||||
### Dodavanje funkcija
|
||||
|
||||
Možete zamoliti OpenCode da vašem projektu doda nove funkcije. Iako preporučujemo da ga prvo zamolite da napravi plan.
|
||||
|
||||
1. **Kreirajte plan**
|
||||
OpenCode ima _Plan mod_ koji onemogućuje njegovu sposobnost da pravi promjene i
|
||||
umjesto toga predložite _kako_ će implementirati ovu funkciju.
|
||||
OpenCode ima _Plan mod_ koji onemogućuje njegovu sposobnost da pravi promjene i umjesto toga predlaže _kako_ će implementirati ovu funkciju.
|
||||
Prebacite se na njega pomoću tipke **Tab**. Vidjet ćete indikator za ovo u donjem desnom uglu.
|
||||
|
||||
```bash frame="none" title="Switch to Plan mode"
|
||||
@@ -223,35 +216,31 @@ Možete zamoliti OpenCode da vašem projektu doda nove funkcije. Iako preporuču
|
||||
Hajde sada da opišemo šta želimo da uradi.
|
||||
|
||||
```txt frame="none"
|
||||
When a user deletes a note, we'd like to flag it as deleted in the database.
|
||||
Then create a screen that shows all the recently deleted notes.
|
||||
From this screen, the user can undelete a note or permanently delete it.
|
||||
When a user deletes a note, we'd like to flag it as deleted in the database.
|
||||
Then create a screen that shows all the recently deleted notes.
|
||||
From this screen, the user can undelete a note or permanently delete it.
|
||||
```
|
||||
|
||||
Želite da date OpenCode dovoljno detalja da razumete šta želite. Pomaže
|
||||
da razgovarate s njim kao da razgovarate sa mlađim programerom u svom timu.
|
||||
Želite da date OpenCode dovoljno detalja da razumije šta želite. Pomaže da razgovarate s njim kao da razgovarate sa mlađim programerom u svom timu.
|
||||
:::tip
|
||||
Dajte OpenCode dosta konteksta i primjera koji će mu pomoći da razumije šta vi
|
||||
želim.
|
||||
Dajte OpenCode dosta konteksta i primjera koji će mu pomoći da razumije šta vi želite.
|
||||
:::
|
||||
|
||||
2. **Ponovite plan**
|
||||
Kada vam da plan, možete mu dati povratne informacije ili dodati više detalja.
|
||||
|
||||
```txt frame="none"
|
||||
We'd like to design this new screen using a design I've used before.
|
||||
[Image #1] Take a look at this image and use it as a reference.
|
||||
We'd like to design this new screen using a design I've used before.
|
||||
[Image #1] Take a look at this image and use it as a reference.
|
||||
```
|
||||
|
||||
:::tip
|
||||
Prevucite i ispustite slike u terminal da biste ih dodali u prompt.
|
||||
:::
|
||||
OpenCode može skenirati sve slike koje mu date i dodati ih u prompt. Možeš
|
||||
učinite to povlačenjem i ispuštanjem slike u terminal.
|
||||
OpenCode može skenirati sve slike koje mu date i dodati ih u prompt. Možete to učiniti povlačenjem i ispuštanjem slike u terminal.
|
||||
|
||||
3. **Izgradite funkciju**
|
||||
Kada se osjećate ugodno s planom, vratite se na _Build mode_ do
|
||||
ponovnim pritiskom na taster **Tab**.
|
||||
Kada se osjećate ugodno s planom, vratite se na _Build mode_ ponovnim pritiskom na taster **Tab**.
|
||||
|
||||
```bash frame="none"
|
||||
<TAB>
|
||||
@@ -265,10 +254,9 @@ I tražeći od njega da napravi promjene.
|
||||
|
||||
---
|
||||
|
||||
### Napravite promjene
|
||||
### Pravljenje izmjena
|
||||
|
||||
Za jednostavnije promjene, možete zamoliti OpenCode da ga direktno izgradi
|
||||
bez potrebe da prvo pregledate plan.
|
||||
Za jednostavnije promjene, možete zamoliti OpenCode da ga direktno izgradi bez potrebe da prvo pregledate plan.
|
||||
|
||||
```txt frame="none" "@packages/functions/src/settings.ts" "@packages/functions/src/notes.ts"
|
||||
We need to add authentication to the /settings route. Take a look at how this is
|
||||
@@ -276,12 +264,11 @@ handled in the /notes route in @packages/functions/src/notes.ts and implement
|
||||
the same logic in @packages/functions/src/settings.ts
|
||||
```
|
||||
|
||||
Želite da budete sigurni da ste pružili dobru količinu detalja kako bi OpenCode bio ispravan
|
||||
promjene.
|
||||
Želite da budete sigurni da ste pružili dobru količinu detalja kako bi OpenCode napravio ispravne promjene.
|
||||
|
||||
---
|
||||
|
||||
### Poništi promjene
|
||||
### Poništavanje izmjena
|
||||
|
||||
Recimo da tražite od OpenCode da izvrši neke promjene.
|
||||
|
||||
@@ -289,15 +276,13 @@ Recimo da tražite od OpenCode da izvrši neke promjene.
|
||||
Can you refactor the function in @packages/functions/src/api/index.ts?
|
||||
```
|
||||
|
||||
Ali shvatate da to nije ono što ste želeli. Možete **poništiti** promjene
|
||||
koristeći naredbu `/undo`.
|
||||
Ali shvatate da to nije ono što ste željeli. Možete **poništiti** promjene koristeći naredbu `/undo`.
|
||||
|
||||
```bash frame="none"
|
||||
/undo
|
||||
```
|
||||
|
||||
OpenCode će sada poništiti promjene koje ste napravili i prikazati vašu originalnu poruku
|
||||
opet.
|
||||
OpenCode će sada poništiti promjene koje ste napravili i ponovo prikazati vašu originalnu poruku.
|
||||
|
||||
```txt frame="none" "@packages/functions/src/api/index.ts"
|
||||
Can you refactor the function in @packages/functions/src/api/index.ts?
|
||||
@@ -315,10 +300,9 @@ Ili **možete ponoviti** promjene koristeći naredbu `/redo`.
|
||||
|
||||
---
|
||||
|
||||
## Dijeli
|
||||
## Dijeljenje
|
||||
|
||||
Razgovore koje imate sa OpenCode možete [dijeliti sa vašim
|
||||
tim](/docs/share).
|
||||
Razgovore koje imate sa OpenCode možete [dijeliti sa vašim timom](/docs/share).
|
||||
|
||||
```bash frame="none"
|
||||
/share
|
||||
@@ -332,7 +316,7 @@ Evo [primjer razgovora](https://opencode.ai/s/4XP1fce5) sa OpenCode.
|
||||
|
||||
---
|
||||
|
||||
## Prilagodi
|
||||
## Prilagođavanje
|
||||
|
||||
I to je to! Sada ste profesionalac u korištenju OpenCode.
|
||||
Da biste to učinili svojim, preporučujemo [odabir teme](/docs/themes), [prilagođavanje povezivanja tipki](/docs/keybinds), [konfiguriranje formatera koda](/docs/formatters), [kreiranje prilagođenih komandi](/docs/commands), ili igranje sa [OpenCode config](/docs/config).
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
---
|
||||
title: Keybinds
|
||||
description: Prilagodite svoje veze dugmadi.
|
||||
title: Prečice tipki
|
||||
description: Prilagodite svoje veze tipki.
|
||||
---
|
||||
|
||||
OpenCode ima listu veza ključeva koje možete prilagoditi preko OpenCode konfiguracije.
|
||||
OpenCode ima listu veza tipki koje možete prilagoditi preko OpenCode konfiguracije.
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -105,15 +105,15 @@ OpenCode ima listu veza ključeva koje možete prilagoditi preko OpenCode konfig
|
||||
|
||||
---
|
||||
|
||||
## Leader key
|
||||
## Leader tipka
|
||||
|
||||
OpenCode koristi `leader` ključ za većinu povezivanja tipki. Ovo izbjegava sukobe u vašem terminalu.
|
||||
Prema zadanim postavkama, `ctrl+x` je vodeći taster i većina radnji zahtijeva da prvo pritisnete vodeći taster, a zatim i prečicu. Na primjer, da biste započeli novu sesiju, prvo pritisnite `ctrl+x`, a zatim pritisnite `n`.
|
||||
Ne morate koristiti vodeći ključ za svoje veze tipki, ali preporučujemo da to učinite.
|
||||
OpenCode koristi `leader` (vodeću) tipku za većinu povezivanja tipki. Ovo izbjegava sukobe u vašem terminalu.
|
||||
Prema zadanim postavkama, `ctrl+x` je vodeća tipka i većina radnji zahtijeva da prvo pritisnete vodeću tipku, a zatim i prečicu. Na primjer, da biste započeli novu sesiju, prvo pritisnite `ctrl+x`, a zatim pritisnite `n`.
|
||||
Ne morate koristiti vodeću tipku za svoje veze tipki, ali preporučujemo da to učinite.
|
||||
|
||||
---
|
||||
|
||||
## Onemogući povezivanje tastera
|
||||
## Onemogućavanje prečica tipki
|
||||
|
||||
Možete onemogućiti spajanje tipki dodavanjem ključa u svoju konfiguraciju s vrijednošću "none".
|
||||
|
||||
@@ -130,21 +130,22 @@ Možete onemogućiti spajanje tipki dodavanjem ključa u svoju konfiguraciju s v
|
||||
|
||||
## Prečice za radnu površinu
|
||||
|
||||
Unos prompta aplikacije OpenCode za desktop podržava uobičajene prečice u stilu Readline/Emacs za uređivanje teksta. Oni su ugrađeni i trenutno se ne mogu konfigurirati putem `opencode.json`.
|
||||
| Prečica | Akcija
|
||||
|-------- | ---------------------------------------- |
|
||||
| `ctrl+a` | Prelazak na početak tekućeg reda |
|
||||
| `ctrl+e` | Prelazak na kraj trenutnog reda |
|
||||
| `ctrl+b` | Pomeri kursor za jedan znak unazad |
|
||||
| `ctrl+f` | Pomicanje kursora naprijed za jedan znak |
|
||||
| `alt+b` | Pomeri kursor za jednu reč unazad |
|
||||
| `alt+f` | Pomeri kursor za jednu reč unapred |
|
||||
| `ctrl+d` | Izbriši znak ispod kursora |
|
||||
| `ctrl+k` | Kill do kraja reda |
|
||||
| `ctrl+u` | Kill do početka reda |
|
||||
| `ctrl+w` | Kill prethodnu riječ |
|
||||
| `alt+d` | Kill sljedeću riječ |
|
||||
| `ctrl+t` | Transponirajte znakove |
|
||||
Unos prompta aplikacije OpenCode za desktop podržava uobičajene prečice u stilu Readline/Emacs za uređivanje teksta. One su ugrađene i trenutno se ne mogu konfigurirati putem `opencode.json`.
|
||||
|
||||
| Prečica | Akcija |
|
||||
| -------- | ------------------------------------------------ |
|
||||
| `ctrl+a` | Prelazak na početak trenutnog reda |
|
||||
| `ctrl+e` | Prelazak na kraj trenutnog reda |
|
||||
| `ctrl+b` | Pomjeri kursor za jedan znak unazad |
|
||||
| `ctrl+f` | Pomicanje kursora naprijed za jedan znak |
|
||||
| `alt+b` | Pomjeri kursor za jednu riječ unazad |
|
||||
| `alt+f` | Pomjeri kursor za jednu riječ unaprijed |
|
||||
| `ctrl+d` | Izbriši znak ispod kursora |
|
||||
| `ctrl+k` | Kill do kraja reda |
|
||||
| `ctrl+u` | Kill do početka reda |
|
||||
| `ctrl+w` | Kill prethodnu riječ |
|
||||
| `alt+d` | Kill sljedeću riječ |
|
||||
| `ctrl+t` | Transponirajte znakove |
|
||||
| `ctrl+g` | Otkaži iskakanje / poništi odgovor na pokretanje |
|
||||
|
||||
---
|
||||
@@ -153,7 +154,7 @@ Unos prompta aplikacije OpenCode za desktop podržava uobičajene prečice u sti
|
||||
|
||||
Neki terminali ne šalju modifikatorske tipke sa Enter prema zadanim postavkama. Možda ćete trebati konfigurirati svoj terminal da pošalje `Shift+Enter` kao escape sekvencu.
|
||||
|
||||
### Windows terminal
|
||||
### Windows Terminal
|
||||
|
||||
Otvorite svoj `settings.json` na:
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ description: OpenCode se integriše sa vašim LSP serverima.
|
||||
|
||||
OpenCode se integriše sa vašim Language Server Protocol (LSP) serverima kako bi pomogao LLM-u u interakciji s kodnom bazom. Koristi dijagnostiku za slanje povratnih informacija modelu.
|
||||
|
||||
## Ugrađeno
|
||||
## Ugrađeni
|
||||
|
||||
OpenCode dolazi sa nekoliko ugrađenih LSP servera za popularne jezike:
|
||||
| LSP server | Ekstenzije | Zahtjevi
|
||||
@@ -58,7 +58,7 @@ Kada opencode otvori fajl, on:
|
||||
|
||||
---
|
||||
|
||||
## Konfiguriši
|
||||
## Konfiguracija
|
||||
|
||||
Možete prilagoditi LSP servere kroz `lsp` odjeljak u vašoj opencode konfiguraciji.
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@ Jednom dodani, MCP alati su automatski dostupni LLM-u zajedno sa ugrađenim alat
|
||||
|
||||
---
|
||||
|
||||
#### Upozorenja
|
||||
#### Upozorenje
|
||||
|
||||
Kada koristite MCP server, on dodaje u kontekst. Ovo se može brzo zbrojiti ako imate puno alata. Stoga preporučujemo da pazite koje MCP servere koristite.
|
||||
:::tip
|
||||
@@ -17,7 +17,7 @@ MCP serveri dodaju vaš kontekst, tako da želite da budete pažljivi s tim koje
|
||||
|
||||
Određeni MCP serveri, poput GitHub MCP servera, mogu dodati mnogo tokena i lako premašiti limit konteksta.
|
||||
|
||||
## Omogući
|
||||
## Omogućavanje
|
||||
|
||||
Možete definirati MCP servere u vašoj [OpenCode Config](https://opencode.ai/docs/config/) pod `mcp`. Dodajte svaki MCP sa jedinstvenim imenom. Možete se pozvati na taj MCP po imenu kada tražite LLM.
|
||||
|
||||
@@ -38,7 +38,7 @@ Možete definirati MCP servere u vašoj [OpenCode Config](https://opencode.ai/do
|
||||
|
||||
Također možete onemogućiti server postavljanjem `enabled` na `false`. To je korisno kada ga želite privremeno isključiti bez uklanjanja iz konfiguracije.
|
||||
|
||||
### Poništavanje daljinskih zadanih postavki
|
||||
### Poništavanje udaljenih zadanih postavki
|
||||
|
||||
Organizacije mogu obezbijediti zadane MCP servere preko svoje krajnje tačke `.well-known/opencode`. Ovi serveri mogu biti onemogućeni prema zadanim postavkama, omogućavajući korisnicima da se odluče za one koji su im potrebni.
|
||||
Da omogućite određeni server iz udaljene konfiguracije vaše organizacije, dodajte ga u svoju lokalnu konfiguraciju sa `enabled: true`:
|
||||
@@ -115,7 +115,7 @@ Ovdje su sve opcije za konfiguriranje lokalnog MCP servera.
|
||||
|
||||
---
|
||||
|
||||
## Daljinski
|
||||
## Udaljeno
|
||||
|
||||
Dodajte udaljene MCP servere postavljanjem `type` na `"remote"`.
|
||||
|
||||
@@ -178,7 +178,7 @@ Za većinu MCP servera sa omogućenim OAuthom nije potrebna posebna konfiguracij
|
||||
|
||||
Ako server zahtijeva autentifikaciju, OpenCode će vas tražiti prijavu pri prvom korištenju. Ako se to ne desi, možete [ručno pokrenuti tok](#authenticating) naredbom `opencode mcp auth <server-name>`.
|
||||
|
||||
### Prethodno registrovano
|
||||
### Prethodno registrirano
|
||||
|
||||
Ako imate klijentske vjerodajnice od dobavljača MCP servera, možete ih konfigurirati:
|
||||
|
||||
@@ -269,11 +269,11 @@ opencode mcp debug my-oauth-server
|
||||
|
||||
Komanda `mcp debug` prikazuje trenutni auth status, testira HTTP povezanost i pokušava OAuth discovery flow.
|
||||
|
||||
## Manage
|
||||
## Upravljanje
|
||||
|
||||
Vaši MCP serveri su dostupni kao alati u OpenCode, zajedno s ugrađenim alatima. Možete njima upravljati kroz OpenCode konfiguraciju kao i bilo kojim drugim alatom.
|
||||
|
||||
### Global
|
||||
### Globalno
|
||||
|
||||
To znači da ih možete omogućiti ili onemogućiti globalno.
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ Saznajte više o [providers](/docs/providers).
|
||||
|
||||
---
|
||||
|
||||
## Odaberite model
|
||||
## Odabir modela
|
||||
|
||||
Nakon što konfigurirate svog provajdera, možete odabrati model koji želite upisivanjem:
|
||||
|
||||
@@ -41,7 +41,7 @@ Evo nekoliko modela koji dobro rade sa OpenCode, bez posebnog redosleda. (Ovo ni
|
||||
|
||||
---
|
||||
|
||||
## Postavite zadano
|
||||
## Postavljanje zadanog
|
||||
|
||||
Da postavite jedan od ovih kao zadani model, možete postaviti ključ `model` u svom
|
||||
OpenCode config.
|
||||
@@ -58,7 +58,7 @@ Ako ste konfigurirali [prilagođenog provajdera](/docs/providers#custom), `provi
|
||||
|
||||
---
|
||||
|
||||
## Konfigurišite modele
|
||||
## Konfiguracija modela
|
||||
|
||||
Možete globalno konfigurirati opcije modela kroz config.
|
||||
|
||||
@@ -180,7 +180,7 @@ Možete nadjačati postojeće varijante ili dodati svoje:
|
||||
}
|
||||
```
|
||||
|
||||
### Cycle variants
|
||||
### Kruženje kroz varijante
|
||||
|
||||
Koristite keybind `variant_cycle` za brzo prebacivanje između varijanti. [Saznajte više](/docs/keybinds).
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@ Možete se prebacivati između režima tokom sesije ili ih konfigurisati u
|
||||
|
||||
---
|
||||
|
||||
## Ugrađeno
|
||||
## Ugrađeni
|
||||
|
||||
opencode dolazi sa dva ugrađena načina rada.
|
||||
|
||||
@@ -42,7 +42,7 @@ Vidi također: [Formatters](/docs/formatters) za informacije o konfiguraciji for
|
||||
|
||||
---
|
||||
|
||||
## Konfiguriši
|
||||
## Konfiguracija
|
||||
|
||||
Možete prilagoditi ugrađene načine rada ili kreirati vlastite kroz konfiguraciju. Modovi se mogu konfigurirati na dva načina:
|
||||
|
||||
@@ -166,7 +166,7 @@ Vrijednosti temperature obično se kreću od 0,0 do 1,0:
|
||||
|
||||
Ako temperatura nije navedena, opencode koristi podrazumijevane postavke specifične za model (obično 0 za većinu modela i 0.55 za Qwen modele).
|
||||
|
||||
### Prompt
|
||||
### Upit
|
||||
|
||||
Navedite prilagođenu sistemsku datoteku prompta za ovaj način rada s konfiguracijom `prompt`. Datoteka s promptom treba da sadrži upute specifične za svrhu načina rada.
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ description: Konfigurirajte proksije i prilagođene certifikate.
|
||||
|
||||
OpenCode podržava standardne proxy varijable okruženja i prilagođene certifikate za enterprise mrežna okruženja.
|
||||
|
||||
## Proxy
|
||||
## Proksi
|
||||
|
||||
OpenCode poštuje standardne varijable proxy okruženja.
|
||||
|
||||
|
||||
@@ -141,7 +141,7 @@ Dozvole OpenCode su označene imenom alata, plus nekoliko sigurnosnih mjera:
|
||||
|
||||
---
|
||||
|
||||
## Defaults
|
||||
## Zadane postavke
|
||||
|
||||
Ako ništa ne navedete, OpenCode počinje od dozvoljenih zadanih vrijednosti:
|
||||
|
||||
@@ -164,7 +164,7 @@ Ako ništa ne navedete, OpenCode počinje od dozvoljenih zadanih vrijednosti:
|
||||
|
||||
---
|
||||
|
||||
## Šta radi “Ask”.
|
||||
## Šta radi “Ask”
|
||||
|
||||
Kada OpenCode zatraži odobrenje, korisničko sučelje nudi tri ishoda:
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
title: Plugins
|
||||
title: Dodaci
|
||||
description: Napišite vlastite dodatke za proširenje OpenCode.
|
||||
---
|
||||
|
||||
@@ -8,7 +8,7 @@ Za primjere, pogledajte [plugins](/docs/ecosystem#plugins) kreirane od strane za
|
||||
|
||||
---
|
||||
|
||||
## Koristite dodatak
|
||||
## Korištenje dodatka
|
||||
|
||||
Postoje dva načina za učitavanje dodataka.
|
||||
|
||||
@@ -22,7 +22,7 @@ Postavite JavaScript ili TypeScript datoteke u direktorij dodataka.
|
||||
|
||||
---
|
||||
|
||||
### Od npm
|
||||
### Iz npm-a
|
||||
|
||||
Navedite npm pakete u vašoj konfiguracijskoj datoteci.
|
||||
|
||||
@@ -45,7 +45,7 @@ Pregledajte dostupne dodatke u [ecosystem](/docs/ecosystem#plugins).
|
||||
|
||||
---
|
||||
|
||||
### Učitaj redoslijed
|
||||
### Redoslijed učitavanja
|
||||
|
||||
Dodaci se učitavaju iz svih izvora i svi zakačnjaci rade u nizu. Redoslijed učitavanja je:
|
||||
|
||||
@@ -57,7 +57,7 @@ Dodaci se učitavaju iz svih izvora i svi zakačnjaci rade u nizu. Redoslijed u
|
||||
|
||||
---
|
||||
|
||||
## Kreirajte dodatak
|
||||
## Kreiranje dodatka
|
||||
|
||||
Dodatak je **JavaScript/TypeScript modul** koji izvozi jedan ili više dodataka
|
||||
funkcije. Svaka funkcija prima objekt konteksta i vraća hooks objekt.
|
||||
@@ -154,14 +154,14 @@ Dodaci se mogu pretplatiti na događaje kao što je prikazano ispod u odjeljku P
|
||||
- `lsp.client.diagnostics`
|
||||
- `lsp.updated`
|
||||
|
||||
#### Poruka Događaji
|
||||
#### Događaji poruka
|
||||
|
||||
- `message.part.removed`
|
||||
- `message.part.updated`
|
||||
- `message.removed`
|
||||
- `message.updated`
|
||||
|
||||
#### Događaji dozvole
|
||||
#### Događaji dozvola
|
||||
|
||||
- `permission.asked`
|
||||
- `permission.replied`
|
||||
@@ -189,7 +189,7 @@ Dodaci se mogu pretplatiti na događaje kao što je prikazano ispod u odjeljku P
|
||||
|
||||
- `shell.env`
|
||||
|
||||
#### Alat Događaji
|
||||
#### Događaji alata
|
||||
|
||||
- `tool.execute.after`
|
||||
- `tool.execute.before`
|
||||
@@ -206,7 +206,7 @@ Dodaci se mogu pretplatiti na događaje kao što je prikazano ispod u odjeljku P
|
||||
|
||||
Evo nekoliko primjera dodataka koje možete koristiti za proširenje OpenCode.
|
||||
|
||||
### Šalji obavještenja
|
||||
### Slanje obavještenja
|
||||
|
||||
Pošaljite obavještenja kada se dogode određeni događaji:
|
||||
|
||||
@@ -248,7 +248,7 @@ export const EnvProtection = async ({ project, client, $, directory, worktree })
|
||||
|
||||
---
|
||||
|
||||
### Ubacite varijable okruženja
|
||||
### Ubacivanje varijabli okruženja
|
||||
|
||||
Ubacite varijable okruženja u sva izvršavanja ljuske (AI alati i korisnički terminali):
|
||||
|
||||
@@ -299,7 +299,7 @@ Pomoćnik `tool` kreira prilagođeni alat koji opencode može pozvati. Uzima fun
|
||||
|
||||
---
|
||||
|
||||
### Logging
|
||||
### Bilježenje
|
||||
|
||||
Koristite `client.app.log()` umjesto `console.log` za strukturirano bilježenje:
|
||||
|
||||
@@ -318,7 +318,7 @@ export const MyPlugin = async ({ client }) => {
|
||||
|
||||
Nivoi su: `debug`, `info`, `warn`, `error`. Pogledajte [SDK dokumentaciju](https://opencode.ai/docs/sdk) za detalje.
|
||||
|
||||
### Kuke za sabijanje
|
||||
### Kuke za sažimanje
|
||||
|
||||
Prilagodite kontekst uključen kada se sesija zbije:
|
||||
|
||||
|
||||
@@ -15,14 +15,14 @@ Za dodavanje provajdera potrebno je:
|
||||
|
||||
---
|
||||
|
||||
### Akreditacije
|
||||
### Vjerodajnice
|
||||
|
||||
Kada dodate API ključeve dobavljača sa naredbom `/connect`, oni se pohranjuju
|
||||
u `~/.local/share/opencode/auth.json`.
|
||||
|
||||
---
|
||||
|
||||
### Config
|
||||
### Konfiguracija
|
||||
|
||||
Možete prilagoditi dobavljače putem odjeljka `provider` u vašem OpenCode
|
||||
config.
|
||||
@@ -84,7 +84,7 @@ Radi kao i svaki drugi provajder u OpenCode i potpuno je opcionalan za korišten
|
||||
|
||||
---
|
||||
|
||||
## Directory
|
||||
## Direktorij
|
||||
|
||||
Pogledajmo neke od provajdera detaljno. Ako želite dodati provajdera na
|
||||
listu, slobodno otvori PR.
|
||||
@@ -135,7 +135,7 @@ Da biste koristili Amazon Bedrock s OpenCode:
|
||||
|
||||
2. **Konfigurirajte autentifikaciju** koristeći jedan od sljedećih metoda:
|
||||
|
||||
#### Varijable okruženja (brzi početak)
|
||||
#### Varijable okruženja (Brzi početak)
|
||||
|
||||
Postavite jednu od ovih varijabli okruženja dok pokrećete opencode:
|
||||
|
||||
@@ -157,7 +157,7 @@ Ili ih dodajte na svoj bash profil:
|
||||
export AWS_REGION=us-east-1
|
||||
```
|
||||
|
||||
#### Konfiguracijski fajl (preporučeno)
|
||||
#### Konfiguracijski fajl (Preporučeno)
|
||||
|
||||
Za konfiguraciju specifičnu za projekat ili trajnu konfiguraciju, koristite `opencode.json`:
|
||||
|
||||
@@ -689,7 +689,7 @@ da pohrani token u opencode auth memoriju.
|
||||
|
||||
##### Samostalni GitLab
|
||||
|
||||
:::note[compliance note]
|
||||
:::note[Napomena o usklađenosti]
|
||||
OpenCode koristi mali model za neke AI zadatke kao što je generiranje naslova sesije.
|
||||
Podrazumevano je konfigurisan da koristi gpt-5-nano, a hostuje ga Zen. Da zaključate OpenCode
|
||||
da biste koristili samo svoju vlastitu instancu koju hostuje GitLab, dodajte sljedeće u svoju
|
||||
@@ -1889,7 +1889,7 @@ Ako imate problema s konfiguracijom provajdera, provjerite sljedeće:
|
||||
|
||||
Ovo se ne odnosi na dobavljače kao što je Amazon Bedrock, koji se oslanjaju na varijable okruženja za svoju autentifikaciju.
|
||||
|
||||
2. Za prilagođene provajdere, provjerite konfiguraciju otvorenog koda i:
|
||||
2. Za prilagođene provajdere, provjerite OpenCode konfiguraciju i:
|
||||
- Uvjerite se da ID provajdera korišten u naredbi `/connect` odgovara ID-u u vašoj opencode konfiguraciji.
|
||||
- Za provajdera se koristi pravi npm paket. Na primjer, koristite `@ai-sdk/cerebras` za Cerebras. A za sve ostale OpenAI kompatibilne provajdere, koristite `@ai-sdk/openai-compatible`.
|
||||
- Provjerite da li se ispravna krajnja tačka API-ja koristi u polju `options.baseURL`.
|
||||
|
||||
@@ -96,7 +96,7 @@ Prva pronadena datoteka pobjeduje u svakoj kategoriji. Na primjer, ako imate i `
|
||||
|
||||
---
|
||||
|
||||
## Prilagodena uputstva
|
||||
## Prilagođena uputstva
|
||||
|
||||
Mozete navesti prilagodene datoteke uputstava u `opencode.json` ili globalnom `~/.config/opencode/opencode.json`. Tako vi i tim ponovo koristite postojeca pravila bez dupliranja u AGENTS.md.
|
||||
|
||||
@@ -128,7 +128,7 @@ Sve datoteke uputstava se kombinuju sa vasim `AGENTS.md` datotekama.
|
||||
|
||||
Iako opencode ne parsira automatski reference datoteka u `AGENTS.md`, slicno ponasanje mozete dobiti na dva nacina:
|
||||
|
||||
### Koristenje opencode.json
|
||||
### Korištenje opencode.json
|
||||
|
||||
Preporuceni pristup je da koristite `instructions` polje u `opencode.json`:
|
||||
|
||||
@@ -139,7 +139,7 @@ Preporuceni pristup je da koristite `instructions` polje u `opencode.json`:
|
||||
}
|
||||
```
|
||||
|
||||
### Rucna uputstva u AGENTS.md
|
||||
### Ručna uputstva u AGENTS.md
|
||||
|
||||
Mozete nauciti opencode da cita eksterne datoteke tako sto cete dati eksplicitna uputstva u `AGENTS.md`. Evo prakticnog primjera:
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ Koristite ga za izradu integracija i programsko upravljanje opencode-om.
|
||||
|
||||
---
|
||||
|
||||
## Install
|
||||
## Instalacija
|
||||
|
||||
Instalirajte SDK sa npm-a:
|
||||
|
||||
@@ -23,7 +23,7 @@ npm install @opencode-ai/sdk
|
||||
|
||||
---
|
||||
|
||||
## Create client
|
||||
## Kreiranje klijenta
|
||||
|
||||
Kreirajte instancu opencode:
|
||||
|
||||
@@ -35,7 +35,7 @@ const { client } = await createOpencode()
|
||||
|
||||
Ovo pokrece i server i klijent
|
||||
|
||||
#### Options
|
||||
#### Opcije
|
||||
|
||||
| Opcija | Tip | Opis | Default |
|
||||
| ---------- | ------------- | ----------------------------- | ----------- |
|
||||
@@ -47,7 +47,7 @@ Ovo pokrece i server i klijent
|
||||
|
||||
---
|
||||
|
||||
## Config
|
||||
## Konfiguracija
|
||||
|
||||
Mozete proslijediti konfiguracijski objekat za prilagodavanje ponasanja. Instanca i dalje ucitava `opencode.json`, ali konfiguraciju mozete nadjacati ili dodati inline:
|
||||
|
||||
@@ -67,7 +67,7 @@ console.log(`Server running at ${opencode.server.url}`)
|
||||
opencode.server.close()
|
||||
```
|
||||
|
||||
## Client only
|
||||
## Samo klijent
|
||||
|
||||
Ako vec imate pokrenutu opencode instancu, mozete napraviti klijentsku instancu i povezati se na nju:
|
||||
|
||||
@@ -79,7 +79,7 @@ const client = createOpencodeClient({
|
||||
})
|
||||
```
|
||||
|
||||
#### Options
|
||||
#### Opcije
|
||||
|
||||
| Opcija | Tip | Opis | Default |
|
||||
| --------------- | ---------- | --------------------------------- | ----------------------- |
|
||||
@@ -91,7 +91,7 @@ const client = createOpencodeClient({
|
||||
|
||||
---
|
||||
|
||||
## Types
|
||||
## Tipovi
|
||||
|
||||
SDK ukljucuje TypeScript definicije za sve API tipove. Uvezite ih direktno:
|
||||
|
||||
@@ -103,7 +103,7 @@ Svi tipovi su generisani iz OpenAPI specifikacije servera i dostupni u <a href={
|
||||
|
||||
---
|
||||
|
||||
## Errors
|
||||
## Greške
|
||||
|
||||
SDK moze baciti greske koje mozete uhvatiti i obraditi:
|
||||
|
||||
@@ -117,7 +117,7 @@ try {
|
||||
|
||||
---
|
||||
|
||||
## APIs
|
||||
## API-ji
|
||||
|
||||
SDK izlaže sve server API-je kroz type-safe klijent.
|
||||
|
||||
@@ -131,7 +131,7 @@ SDK izlaže sve server API-je kroz type-safe klijent.
|
||||
|
||||
---
|
||||
|
||||
#### Examples
|
||||
#### Primjeri
|
||||
|
||||
```javascript
|
||||
const health = await client.global.health()
|
||||
@@ -149,7 +149,7 @@ console.log(health.data.version)
|
||||
|
||||
---
|
||||
|
||||
#### Examples
|
||||
#### Primjeri
|
||||
|
||||
```javascript
|
||||
// Write a log entry
|
||||
@@ -176,7 +176,7 @@ const agents = await client.app.agents()
|
||||
|
||||
---
|
||||
|
||||
#### Examples
|
||||
#### Primjeri
|
||||
|
||||
```javascript
|
||||
// List all projects
|
||||
@@ -196,7 +196,7 @@ const currentProject = await client.project.current()
|
||||
|
||||
---
|
||||
|
||||
#### Examples
|
||||
#### Primjeri
|
||||
|
||||
```javascript
|
||||
// Get current path information
|
||||
@@ -205,7 +205,7 @@ const pathInfo = await client.path.get()
|
||||
|
||||
---
|
||||
|
||||
### Config
|
||||
### Konfiguracija
|
||||
|
||||
| Metoda | Opis | Odgovor |
|
||||
| -------------------- | --------------------------------- | ----------------------------------------------------------------------------------------------------- |
|
||||
@@ -214,7 +214,7 @@ const pathInfo = await client.path.get()
|
||||
|
||||
---
|
||||
|
||||
#### Examples
|
||||
#### Primjeri
|
||||
|
||||
```javascript
|
||||
const config = await client.config.get()
|
||||
@@ -224,7 +224,7 @@ const { providers, default: defaults } = await client.config.providers()
|
||||
|
||||
---
|
||||
|
||||
### Sessions
|
||||
### Sesije
|
||||
|
||||
| Metoda | Opis | Napomene |
|
||||
| ---------------------------------------------------------- | ---------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
@@ -250,7 +250,7 @@ const { providers, default: defaults } = await client.config.providers()
|
||||
|
||||
---
|
||||
|
||||
#### Examples
|
||||
#### Primjeri
|
||||
|
||||
```javascript
|
||||
// Create and manage sessions
|
||||
@@ -281,7 +281,7 @@ await client.session.prompt({
|
||||
|
||||
---
|
||||
|
||||
### Files
|
||||
### Datoteke
|
||||
|
||||
| Metoda | Opis | Odgovor |
|
||||
| ------------------------- | ---------------------------------- | ------------------------------------------------------------------------------------------- |
|
||||
@@ -299,7 +299,7 @@ await client.session.prompt({
|
||||
|
||||
---
|
||||
|
||||
#### Examples
|
||||
#### Primjeri
|
||||
|
||||
```javascript
|
||||
// Search and read files
|
||||
@@ -338,7 +338,7 @@ const content = await client.file.read({
|
||||
|
||||
---
|
||||
|
||||
#### Examples
|
||||
#### Primjeri
|
||||
|
||||
```javascript
|
||||
// Control TUI interface
|
||||
@@ -361,7 +361,7 @@ await client.tui.showToast({
|
||||
|
||||
---
|
||||
|
||||
#### Examples
|
||||
#### Primjeri
|
||||
|
||||
```javascript
|
||||
await client.auth.set({
|
||||
@@ -372,7 +372,7 @@ await client.auth.set({
|
||||
|
||||
---
|
||||
|
||||
### Events
|
||||
### Događaji
|
||||
|
||||
| Metoda | Opis | Odgovor |
|
||||
| ------------------- | ------------------------- | ------------------------- |
|
||||
@@ -380,7 +380,7 @@ await client.auth.set({
|
||||
|
||||
---
|
||||
|
||||
#### Examples
|
||||
#### Primjeri
|
||||
|
||||
```javascript
|
||||
// Listen to real-time events
|
||||
|
||||
@@ -10,13 +10,13 @@ Komanda `opencode serve` pokrece headless HTTP server koji izlaže OpenAPI endpo
|
||||
|
||||
---
|
||||
|
||||
### Usage
|
||||
### Korištenje
|
||||
|
||||
```bash
|
||||
opencode serve [--port <number>] [--hostname <string>] [--cors <origin>]
|
||||
```
|
||||
|
||||
#### Options
|
||||
#### Opcije
|
||||
|
||||
| Zastava | Opis | Default |
|
||||
| --------------- | ----------------------------------- | ---------------- |
|
||||
@@ -34,7 +34,7 @@ opencode serve --cors http://localhost:5173 --cors https://app.example.com
|
||||
|
||||
---
|
||||
|
||||
### Authentication
|
||||
### Autentifikacija
|
||||
|
||||
Postavite `OPENCODE_SERVER_PASSWORD` da zastitite server HTTP basic auth mehanizmom. Korisnicko ime je po defaultu `opencode`, ili postavite `OPENCODE_SERVER_USERNAME` za nadjacavanje. Ovo vazi i za `opencode serve` i za `opencode web`.
|
||||
|
||||
@@ -44,7 +44,7 @@ OPENCODE_SERVER_PASSWORD=your-password opencode serve
|
||||
|
||||
---
|
||||
|
||||
### How it works
|
||||
### Kako radi
|
||||
|
||||
Kada pokrenete `opencode`, pokrecu se TUI i server. TUI je klijent koji komunicira sa serverom. Server izlaže OpenAPI 3.1 spec endpoint koji se koristi i za generisanje [SDK-a](/docs/sdk).
|
||||
|
||||
@@ -58,7 +58,7 @@ Mozete pokrenuti `opencode serve` da startate standalone server. Ako je opencode
|
||||
|
||||
---
|
||||
|
||||
#### Connect to an existing server
|
||||
#### Povezivanje na postojeći server
|
||||
|
||||
Kada pokrenete TUI, port i hostname se nasumicno dodijele. Umjesto toga, mozete zadati `--hostname` i `--port` [zastave](/docs/cli), pa se povezati na taj server.
|
||||
|
||||
@@ -66,7 +66,7 @@ Endpoint [`/tui`](#tui) mozete koristiti za upravljanje TUI-jem kroz server. Na
|
||||
|
||||
---
|
||||
|
||||
## Spec
|
||||
## Specifikacija
|
||||
|
||||
Server objavljuje OpenAPI 3.1 specifikaciju koju mozete vidjeti na:
|
||||
|
||||
@@ -78,13 +78,13 @@ Na primjer, `http://localhost:4096/doc`. Koristite specifikaciju da generisete k
|
||||
|
||||
---
|
||||
|
||||
## APIs
|
||||
## API-ji
|
||||
|
||||
opencode server izlaže sljedece API-je.
|
||||
|
||||
---
|
||||
|
||||
### Global
|
||||
### Globalno
|
||||
|
||||
| Metoda | Putanja | Opis | Odgovor |
|
||||
| ------ | ---------------- | ------------------------------ | ------------------------------------ |
|
||||
@@ -93,7 +93,7 @@ opencode server izlaže sljedece API-je.
|
||||
|
||||
---
|
||||
|
||||
### Project
|
||||
### Projekt
|
||||
|
||||
| Metoda | Putanja | Opis | Odgovor |
|
||||
| ------ | ------------------ | ----------------------- | --------------------------------------------- |
|
||||
@@ -102,7 +102,7 @@ opencode server izlaže sljedece API-je.
|
||||
|
||||
---
|
||||
|
||||
### Path & VCS
|
||||
### Putanja i VCS
|
||||
|
||||
| Metoda | Putanja | Opis | Odgovor |
|
||||
| ------ | ------- | ------------------------------------ | ------------------------------------------- |
|
||||
@@ -111,7 +111,7 @@ opencode server izlaže sljedece API-je.
|
||||
|
||||
---
|
||||
|
||||
### Instance
|
||||
### Instanca
|
||||
|
||||
| Metoda | Putanja | Opis | Odgovor |
|
||||
| ------ | ------------------- | ---------------------------- | --------- |
|
||||
@@ -119,7 +119,7 @@ opencode server izlaže sljedece API-je.
|
||||
|
||||
---
|
||||
|
||||
### Config
|
||||
### Konfiguracija
|
||||
|
||||
| Metoda | Putanja | Opis | Odgovor |
|
||||
| ------- | ------------------- | --------------------------------- | ---------------------------------------------------------------------------------------- |
|
||||
@@ -129,7 +129,7 @@ opencode server izlaže sljedece API-je.
|
||||
|
||||
---
|
||||
|
||||
### Provider
|
||||
### Provajder
|
||||
|
||||
| Metoda | Putanja | Opis | Odgovor |
|
||||
| ------ | -------------------------------- | ------------------------------------ | ----------------------------------------------------------------------------------- |
|
||||
@@ -140,7 +140,7 @@ opencode server izlaže sljedece API-je.
|
||||
|
||||
---
|
||||
|
||||
### Sessions
|
||||
### Sesije
|
||||
|
||||
| Metoda | Putanja | Opis | Napomene |
|
||||
| -------- | ---------------------------------------- | ------------------------------------- | ---------------------------------------------------------------------------------- |
|
||||
@@ -165,7 +165,7 @@ opencode server izlaže sljedece API-je.
|
||||
|
||||
---
|
||||
|
||||
### Messages
|
||||
### Poruke
|
||||
|
||||
| Metoda | Putanja | Opis | Napomene |
|
||||
| ------ | --------------------------------- | --------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
@@ -178,7 +178,7 @@ opencode server izlaže sljedece API-je.
|
||||
|
||||
---
|
||||
|
||||
### Commands
|
||||
### Naredbe
|
||||
|
||||
| Metoda | Putanja | Opis | Odgovor |
|
||||
| ------ | ---------- | ----------------- | --------------------------------------------- |
|
||||
@@ -186,7 +186,7 @@ opencode server izlaže sljedece API-je.
|
||||
|
||||
---
|
||||
|
||||
### Files
|
||||
### Datoteke
|
||||
|
||||
| Metoda | Putanja | Opis | Odgovor |
|
||||
| ------ | ------------------------ | ---------------------------------- | ------------------------------------------------------------------------------------------- |
|
||||
@@ -197,17 +197,17 @@ opencode server izlaže sljedece API-je.
|
||||
| `GET` | `/file/content?path=<p>` | Read a file | <a href={typesUrl}><code>FileContent</code></a> |
|
||||
| `GET` | `/file/status` | Get status for tracked files | <a href={typesUrl}><code>File[]</code></a> |
|
||||
|
||||
#### `/find/file` query parameters
|
||||
#### `/find/file` parametri upita
|
||||
|
||||
- `query` (required) — search string (fuzzy match)
|
||||
- `type` (optional) — limit results to `"file"` or `"directory"`
|
||||
- `directory` (optional) — override the project root for the search
|
||||
- `limit` (optional) — max results (1–200)
|
||||
- `dirs` (optional) — legacy flag (`"false"` returns only files)
|
||||
- `query` (obavezno) — niz za pretragu (fuzzy podudaranje)
|
||||
- `type` (opcionalno) — ograniči rezultate na `"file"` ili `"directory"`
|
||||
- `directory` (opcionalno) — nadjačaj korijen projekta za pretragu
|
||||
- `limit` (opcionalno) — maksimalni rezultati (1–200)
|
||||
- `dirs` (opcionalno) — zastarjela zastavica (`"false"` vraća samo datoteke)
|
||||
|
||||
---
|
||||
|
||||
### Tools (Experimental)
|
||||
### Alati (Eksperimentalno)
|
||||
|
||||
| Metoda | Putanja | Opis | Odgovor |
|
||||
| ------ | ------------------------------------------- | ---------------------------------------- | -------------------------------------------- |
|
||||
@@ -216,7 +216,7 @@ opencode server izlaže sljedece API-je.
|
||||
|
||||
---
|
||||
|
||||
### LSP, Formatters & MCP
|
||||
### LSP, Formateri & MCP
|
||||
|
||||
| Metoda | Putanja | Opis | Odgovor |
|
||||
| ------ | ------------ | -------------------------- | -------------------------------------------------------- |
|
||||
@@ -227,7 +227,7 @@ opencode server izlaže sljedece API-je.
|
||||
|
||||
---
|
||||
|
||||
### Agents
|
||||
### Agenti
|
||||
|
||||
| Metoda | Putanja | Opis | Odgovor |
|
||||
| ------ | -------- | ------------------------- | ------------------------------------------- |
|
||||
@@ -235,7 +235,7 @@ opencode server izlaže sljedece API-je.
|
||||
|
||||
---
|
||||
|
||||
### Logging
|
||||
### Bilježenje
|
||||
|
||||
| Metoda | Putanja | Opis | Odgovor |
|
||||
| ------ | ------- | ------------------------------------------------------------ | --------- |
|
||||
@@ -261,7 +261,7 @@ opencode server izlaže sljedece API-je.
|
||||
|
||||
---
|
||||
|
||||
### Auth
|
||||
### Autentifikacija
|
||||
|
||||
| Metoda | Putanja | Opis | Odgovor |
|
||||
| ------ | ----------- | --------------------------------------------------------------- | --------- |
|
||||
@@ -269,7 +269,7 @@ opencode server izlaže sljedece API-je.
|
||||
|
||||
---
|
||||
|
||||
### Events
|
||||
### Događaji
|
||||
|
||||
| Metoda | Putanja | Opis | Odgovor |
|
||||
| ------ | -------- | ----------------------------------------------------------------------------- | ------------------------- |
|
||||
@@ -277,7 +277,7 @@ opencode server izlaže sljedece API-je.
|
||||
|
||||
---
|
||||
|
||||
### Docs
|
||||
### Dokumentacija
|
||||
|
||||
| Metoda | Putanja | Opis | Odgovor |
|
||||
| ------ | ------- | ------------------------- | --------------------------- |
|
||||
|
||||
@@ -21,13 +21,13 @@ Kada podijelite razgovor, OpenCode:
|
||||
|
||||
---
|
||||
|
||||
## Sharing
|
||||
## Dijeljenje
|
||||
|
||||
OpenCode podrzava tri nacina dijeljenja koji odreduju kako se razgovori dijele:
|
||||
|
||||
---
|
||||
|
||||
### Manual (default)
|
||||
### Ručno (zadano)
|
||||
|
||||
Po defaultu, OpenCode koristi rucni nacin dijeljenja. Sesije se ne dijele automatski, ali ih mozete rucno podijeliti komandom `/share`:
|
||||
|
||||
@@ -48,7 +48,7 @@ Da eksplicitno postavite rucni nacin u [config datoteci](/docs/config):
|
||||
|
||||
---
|
||||
|
||||
### Auto-share
|
||||
### Automatsko dijeljenje
|
||||
|
||||
Mozete ukljuciti automatsko dijeljenje za sve nove razgovore tako sto `share` postavite na `"auto"` u [config datoteci](/docs/config):
|
||||
|
||||
@@ -63,7 +63,7 @@ Kada je auto-share ukljucen, svaki novi razgovor se automatski dijeli i kreira s
|
||||
|
||||
---
|
||||
|
||||
### Disabled
|
||||
### Onemogućeno
|
||||
|
||||
Dijeljenje mozete potpuno iskljuciti tako sto `share` postavite na `"disabled"` u [config datoteci](/docs/config):
|
||||
|
||||
@@ -96,7 +96,7 @@ Imajte na umu nekoliko stvari prije dijeljenja razgovora.
|
||||
|
||||
---
|
||||
|
||||
### Cuvanje podataka
|
||||
### Čuvanje podataka
|
||||
|
||||
Dijeljeni razgovori ostaju dostupni dok ih eksplicitno ne uklonite iz dijeljenja. Ovo ukljucuje:
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
title: "Skills agenata"
|
||||
title: Vještine agenata
|
||||
description: "Definisite ponasanje koje se moze ponovo koristiti"
|
||||
---
|
||||
|
||||
@@ -31,7 +31,7 @@ Globalne definicije se takoder ucitavaju iz `~/.config/opencode/skills/*/SKILL.m
|
||||
|
||||
---
|
||||
|
||||
## Napisite frontmatter
|
||||
## Pisanje frontmatter-a
|
||||
|
||||
Svaki `SKILL.md` mora poceti YAML frontmatter-om.
|
||||
Prepoznaju se samo ova polja:
|
||||
@@ -64,14 +64,14 @@ Ekvivalentni regex:
|
||||
|
||||
---
|
||||
|
||||
## Pratite pravila duzine
|
||||
## Pravila dužine
|
||||
|
||||
`description` mora imati 1-1024 karaktera.
|
||||
Neka bude dovoljno precizan da agent moze pravilno odabrati.
|
||||
|
||||
---
|
||||
|
||||
## Koristite primjer
|
||||
## Primjer
|
||||
|
||||
Kreirajte `.opencode/skills/git-release/SKILL.md` ovako:
|
||||
|
||||
@@ -100,7 +100,7 @@ Ask clarifying questions if the target versioning scheme is unclear.
|
||||
|
||||
---
|
||||
|
||||
## Prepoznajte opis alata
|
||||
## Opis alata
|
||||
|
||||
OpenCode navodi dostupne skills u opisu `skill` alata.
|
||||
Svaki unos sadrzi naziv i opis skill-a:
|
||||
@@ -122,7 +122,7 @@ skill({ name: "git-release" })
|
||||
|
||||
---
|
||||
|
||||
## Konfigurisite dozvole
|
||||
## Konfiguracija dozvola
|
||||
|
||||
Kontrolisite kojim skills agenti mogu pristupiti pomocu dozvola baziranih na obrascima u `opencode.json`:
|
||||
|
||||
@@ -149,7 +149,7 @@ Obrasci podrzavaju wildcard znakove: `internal-*` poklapa `internal-docs`, `inte
|
||||
|
||||
---
|
||||
|
||||
## Nadjacajte po agentu
|
||||
## Nadjačavanje po agentu
|
||||
|
||||
Dajte odredenim agentima drugacije dozvole od globalnih defaulta.
|
||||
|
||||
@@ -181,7 +181,7 @@ permission:
|
||||
|
||||
---
|
||||
|
||||
## Iskljucite skill alat
|
||||
## Isključivanje skill alata
|
||||
|
||||
Potpuno iskljucite skills za agente koji ih ne bi trebali koristiti:
|
||||
|
||||
@@ -212,7 +212,7 @@ Kada je iskljuceno, sekcija `<available_skills>` se potpuno izostavlja.
|
||||
|
||||
---
|
||||
|
||||
## Rjesavanje problema s ucitavanjem
|
||||
## Rješavanje problema s učitavanjem
|
||||
|
||||
Ako se skill ne pojavi:
|
||||
|
||||
|
||||
@@ -21,7 +21,7 @@ Bez truecolor podrske, teme mogu imati slabiju preciznost boja ili pasti na najb
|
||||
|
||||
---
|
||||
|
||||
## Ugradene teme
|
||||
## Ugrađene teme
|
||||
|
||||
OpenCode dolazi sa vise ugradenih tema.
|
||||
|
||||
@@ -59,7 +59,7 @@ System tema je za korisnike koji:
|
||||
|
||||
---
|
||||
|
||||
## Koristenje teme
|
||||
## Korištenje teme
|
||||
|
||||
Temu mozete izabrati preko selektora tema komandom `/theme`. Mozete je navesti i u [configu](/docs/config).
|
||||
|
||||
@@ -72,7 +72,7 @@ Temu mozete izabrati preko selektora tema komandom `/theme`. Mozete je navesti i
|
||||
|
||||
---
|
||||
|
||||
## Prilagodene teme
|
||||
## Prilagođene teme
|
||||
|
||||
OpenCode podrzava fleksibilan sistem tema baziran na JSON-u koji olaksava kreiranje i prilagodavanje tema.
|
||||
|
||||
@@ -111,7 +111,7 @@ vim .opencode/themes/my-theme.json
|
||||
|
||||
---
|
||||
|
||||
### JSON format
|
||||
### JSON struktura
|
||||
|
||||
Teme koriste fleksibilan JSON format koji podrzava:
|
||||
|
||||
@@ -129,7 +129,7 @@ Sekcija `defs` je opcionalna i omogucava da definisete boje koje se mogu ponovo
|
||||
|
||||
---
|
||||
|
||||
### Terminalski defaulti
|
||||
### Terminalske zadane vrijednosti
|
||||
|
||||
Specijalna vrijednost `"none"` moze se koristiti za bilo koju boju da naslijedi defaultnu boju terminala. Ovo je korisno za teme koje se prirodno uklapaju u semu boja terminala:
|
||||
|
||||
@@ -138,7 +138,7 @@ Specijalna vrijednost `"none"` moze se koristiti za bilo koju boju da naslijedi
|
||||
|
||||
---
|
||||
|
||||
### Example
|
||||
### Primjer
|
||||
|
||||
Evo primjera prilagodene teme:
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@ Po defaultu su svi alati **ukljuceni** i ne traze dozvolu za pokretanje. Ponasan
|
||||
|
||||
---
|
||||
|
||||
## Configure
|
||||
## Konfiguracija
|
||||
|
||||
Koristite polje `permission` za kontrolu ponasanja alata. Za svaki alat mozete postaviti allow, deny ili ask.
|
||||
|
||||
@@ -39,7 +39,7 @@ Mozete koristiti i wildcard obrasce da kontrolisete vise alata odjednom. Na prim
|
||||
|
||||
---
|
||||
|
||||
## Built-in
|
||||
## Ugrađeni
|
||||
|
||||
Ovo su svi ugradeni alati dostupni u OpenCode.
|
||||
|
||||
@@ -168,7 +168,7 @@ Ovaj alat ispisuje sadrzaj direktorija. Prihvata glob obrasce za filtriranje rez
|
||||
|
||||
---
|
||||
|
||||
### lsp (experimental)
|
||||
### lsp (eksperimentalno)
|
||||
|
||||
Komunicira sa konfigurisanim LSP serverima za funkcije inteligencije koda kao definicije, reference, hover info i hijerarhija poziva.
|
||||
|
||||
@@ -344,7 +344,7 @@ Svako pitanje ukljucuje naslov, tekst pitanja i listu opcija. Korisnici mogu iza
|
||||
|
||||
---
|
||||
|
||||
## Custom tools
|
||||
## Prilagođeni alati
|
||||
|
||||
Custom tools vam omogucavaju da definisete vlastite funkcije koje LLM moze pozivati. Definisu se u config datoteci i mogu izvrsavati proizvoljan kod.
|
||||
|
||||
@@ -352,7 +352,7 @@ Custom tools vam omogucavaju da definisete vlastite funkcije koje LLM moze poziv
|
||||
|
||||
---
|
||||
|
||||
## MCP servers
|
||||
## MCP serveri
|
||||
|
||||
MCP (Model Context Protocol) serveri omogucavaju integraciju eksternih alata i servisa. Ovo ukljucuje pristup bazama, API integracije i third-party servise.
|
||||
|
||||
@@ -360,13 +360,13 @@ MCP (Model Context Protocol) serveri omogucavaju integraciju eksternih alata i s
|
||||
|
||||
---
|
||||
|
||||
## Internals
|
||||
## Interno
|
||||
|
||||
Interno, alati kao `grep`, `glob` i `list` koriste [ripgrep](https://github.com/BurntSushi/ripgrep). Po defaultu, ripgrep postuje `.gitignore` obrasce, pa se fajlovi i direktoriji iz `.gitignore` izostavljaju iz pretraga i listinga.
|
||||
|
||||
---
|
||||
|
||||
### Ignore patterns
|
||||
### Obrasci ignorisanja
|
||||
|
||||
Da ukljucite fajlove koji bi inace bili ignorisani, kreirajte `.ignore` datoteku u korijenu projekta. Ova datoteka moze eksplicitno dozvoliti odredene putanje.
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@ Da biste otklonili probleme s OpenCode, počnite provjeravanjem dnevnika i lokal
|
||||
|
||||
---
|
||||
|
||||
## Logovi
|
||||
## Dnevnici
|
||||
|
||||
Log fajlovi se pišu na:
|
||||
|
||||
@@ -20,9 +20,9 @@ Možete postaviti nivo dnevnika pomoću opcije komandne linije `--log-level` da
|
||||
|
||||
---
|
||||
|
||||
## Skladištenje
|
||||
## Pohrana
|
||||
|
||||
opencode pohranjuje podatke o sesiji i druge podatke aplikacije na disku na:
|
||||
OpenCode pohranjuje podatke o sesiji i druge podatke aplikacije na disku na:
|
||||
|
||||
- **macOS/Linux**: `~/.local/share/opencode/`
|
||||
- **Windows**: Pritisnite `WIN+R` i zalijepite `%USERPROFILE%\.local\share\opencode`
|
||||
@@ -49,7 +49,7 @@ OpenCode Desktop pokreće lokalni OpenCode server (`opencode-cli` sidecar) u poz
|
||||
|
||||
---
|
||||
|
||||
### Onemogući dodatke
|
||||
### Onemogućavanje dodataka
|
||||
|
||||
Ako se desktop aplikacija ruši pri pokretanju, visi ili se čudno ponaša, počnite s onemogućavanjem dodataka.
|
||||
|
||||
@@ -70,7 +70,7 @@ Ako imate konfigurirane dodatke, privremeno ih onemogućite uklanjanjem ključa
|
||||
}
|
||||
```
|
||||
|
||||
#### Provjerite imenike dodataka
|
||||
#### Provjera direktorija dodataka
|
||||
|
||||
OpenCode također može učitati lokalne dodatke s diska. Privremeno ih maknite s puta (ili preimenujte folder) i ponovo pokrenite desktop aplikaciju:
|
||||
|
||||
@@ -84,7 +84,7 @@ Ako aplikacija ponovo počne raditi, ponovo omogućite dodatke jedan po jedan ka
|
||||
|
||||
---
|
||||
|
||||
### Očisti keš memoriju
|
||||
### Brisanje keš memorije
|
||||
|
||||
Ako onemogućavanje dodataka ne pomogne (ili se instalacija dodatka zaglavila), obrišite keš memoriju kako bi ga OpenCode mogao ponovo izgraditi.
|
||||
|
||||
@@ -99,7 +99,7 @@ Ako onemogućavanje dodataka ne pomogne (ili se instalacija dodatka zaglavila),
|
||||
|
||||
---
|
||||
|
||||
### Popravite probleme sa vezom na serveru
|
||||
### Rješavanje problema sa vezom na serveru
|
||||
|
||||
OpenCode Desktop može ili pokrenuti svoj lokalni server (podrazumevano) ili se povezati na URL servera koji ste konfigurisali.
|
||||
|
||||
@@ -130,7 +130,7 @@ Na Linuxu, neka podešavanja Waylanda mogu uzrokovati prazne prozore ili greške
|
||||
|
||||
---
|
||||
|
||||
### Windows: WebView2 runtime
|
||||
### Windows: WebView2 izvršno okruženje
|
||||
|
||||
Na Windows-u, OpenCode Desktop zahtijeva Microsoft Edge **WebView2 Runtime**. Ako se aplikacija otvori u praznom prozoru ili se ne pokrene, instalirajte/ažurirajte WebView2 i pokušajte ponovo.
|
||||
|
||||
@@ -151,7 +151,7 @@ OpenCode Desktop prikazuje sistemska obavještenja samo kada:
|
||||
|
||||
---
|
||||
|
||||
### Poništi pohranu desktop aplikacija (posljednje rješenje)
|
||||
### Resetovanje pohrane desktop aplikacije
|
||||
|
||||
Ako se aplikacija ne pokrene i ne možete izbrisati postavke unutar korisničkog sučelja, resetirajte spremljeno stanje desktop aplikacije.
|
||||
|
||||
@@ -169,7 +169,7 @@ Da brzo pronađete direktorij:
|
||||
|
||||
---
|
||||
|
||||
## Dobivanje pomoći
|
||||
## Traženje pomoći
|
||||
|
||||
Ako imate problema s OpenCode:
|
||||
|
||||
@@ -195,7 +195,7 @@ Evo nekih uobičajenih problema i kako ih riješiti.
|
||||
|
||||
---
|
||||
|
||||
### OpenCode se neće pokrenuti
|
||||
### OpenCode se ne pokreće
|
||||
|
||||
1. Provjerite dnevnike za poruke o greškama
|
||||
2. Pokušajte pokrenuti sa `--print-logs` da vidite izlaz u terminalu
|
||||
@@ -252,7 +252,7 @@ Na Windows-u pritisnite `WIN+R` i izbrišite: `%USERPROFILE%\.local\share\openco
|
||||
|
||||
### AI_APICallError i problemi sa paketom dobavljača
|
||||
|
||||
Ako naiđete na greške API poziva, to može biti zbog zastarjelih paketa dobavljača. opencode dinamički instalira pakete dobavljača (OpenAI, Anthropic, Google, itd.) po potrebi i kešira ih lokalno.
|
||||
Ako naiđete na greške API poziva, to može biti zbog zastarjelih paketa dobavljača. OpenCode dinamički instalira pakete dobavljača (OpenAI, Anthropic, Google, itd.) po potrebi i kešira ih lokalno.
|
||||
|
||||
Da biste riješili probleme s paketom dobavljača:
|
||||
|
||||
@@ -264,9 +264,9 @@ Da biste riješili probleme s paketom dobavljača:
|
||||
|
||||
Na Windows-u pritisnite `WIN+R` i izbrišite: `%USERPROFILE%\.cache\opencode`
|
||||
|
||||
2. Ponovo pokrenite opencode da ponovo instalirate najnovije pakete dobavljača
|
||||
2. Ponovo pokrenite OpenCode da ponovo instalirate najnovije pakete dobavljača
|
||||
|
||||
Ovo će prisiliti opencode da preuzme najnovije verzije paketa dobavljača, što često rješava probleme kompatibilnosti s parametrima modela i promjenama API-ja.
|
||||
Ovo će prisiliti OpenCode da preuzme najnovije verzije paketa dobavljača, što često rješava probleme kompatibilnosti s parametrima modela i promjenama API-ja.
|
||||
|
||||
---
|
||||
|
||||
@@ -297,4 +297,4 @@ Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &
|
||||
export DISPLAY=:99.0
|
||||
```
|
||||
|
||||
opencode će otkriti da li koristite Wayland i preferirate `wl-clipboard`, u suprotnom će pokušati pronaći alate međuspremnika po redoslijedu: `xclip` i `xsel`.
|
||||
OpenCode će otkriti da li koristite Wayland i preferirate `wl-clipboard`, u suprotnom će pokušati pronaći alate međuspremnika po redoslijedu: `xclip` i `xsel`.
|
||||
|
||||
@@ -27,7 +27,7 @@ Give me a quick summary of the codebase.
|
||||
|
||||
---
|
||||
|
||||
## Reference fajlova
|
||||
## Reference datoteka
|
||||
|
||||
Možete referencirati datoteke u svojim porukama koristeći `@`. Ovo vrši nejasnu pretragu datoteka u trenutnom radnom direktoriju.
|
||||
|
||||
@@ -43,7 +43,7 @@ Sadržaj datoteke se automatski dodaje u razgovor.
|
||||
|
||||
---
|
||||
|
||||
## Bash komande
|
||||
## Bash naredbe
|
||||
|
||||
Započnite poruku sa `!` da pokrenete komandu ljuske.
|
||||
|
||||
@@ -55,7 +55,7 @@ Izlaz naredbe se dodaje u razgovor kao rezultat alata.
|
||||
|
||||
---
|
||||
|
||||
## Komande
|
||||
## Naredbe
|
||||
|
||||
Kada koristite OpenCode TUI, možete upisati `/` nakon čega slijedi ime komande da biste brzo izvršili radnje. na primjer:
|
||||
|
||||
@@ -356,7 +356,7 @@ Nekim uređivačima su potrebni argumenti komandne linije da bi se pokrenuli u n
|
||||
|
||||
---
|
||||
|
||||
## Konfiguriši
|
||||
## Konfiguracija
|
||||
|
||||
Možete prilagoditi TUI ponašanje putem vašeg OpenCode konfiguracionog fajla.
|
||||
|
||||
|
||||
@@ -21,7 +21,7 @@ Ovo pokreće lokalni server na `127.0.0.1` sa nasumičnim dostupnim portom i aut
|
||||
Ako `OPENCODE_SERVER_PASSWORD` nije postavljen, server će biti nezaštićen. Ovo je u redu za lokalnu upotrebu, ali bi trebalo biti postavljeno za pristup mreži.
|
||||
:::
|
||||
|
||||
:::tip[Windows Users]
|
||||
:::tip[Windows korisnici]
|
||||
Za najbolje iskustvo, pokrenite `opencode web` iz [WSL](/docs/windows-wsl) umjesto PowerShell-a. Ovo osigurava pravilan pristup sistemu datoteka i integraciju terminala.
|
||||
:::
|
||||
|
||||
@@ -54,7 +54,7 @@ Kada koristite `0.0.0.0`, OpenCode će prikazati i lokalne i mrežne adrese:
|
||||
Network access: http://192.168.1.100:4096
|
||||
```
|
||||
|
||||
### mDNS Discovery
|
||||
### mDNS Otkrivanje
|
||||
|
||||
Omogućite mDNS kako bi vaš server bio vidljiv na lokalnoj mreži:
|
||||
|
||||
|
||||
@@ -7,13 +7,13 @@ import { Steps } from "@astrojs/starlight/components"
|
||||
|
||||
Iako OpenCode moze raditi direktno na Windowsu, preporucujemo [Windows Subsystem for Linux (WSL)](https://learn.microsoft.com/en-us/windows/wsl/install) za najbolje iskustvo. WSL daje Linux okruzenje koje glatko radi sa OpenCode funkcijama.
|
||||
|
||||
:::tip[Why WSL?]
|
||||
:::tip[Zašto WSL?]
|
||||
WSL nudi bolje performanse fajl sistema, punu terminalsku podrsku i kompatibilnost s razvojnim alatima na koje se OpenCode oslanja.
|
||||
:::
|
||||
|
||||
---
|
||||
|
||||
## Setup
|
||||
## Postavljanje
|
||||
|
||||
<Steps>
|
||||
|
||||
@@ -42,7 +42,7 @@ WSL nudi bolje performanse fajl sistema, punu terminalsku podrsku i kompatibilno
|
||||
|
||||
---
|
||||
|
||||
## Desktop App + WSL Server
|
||||
## Desktop aplikacija + WSL Server
|
||||
|
||||
Ako preferirate OpenCode Desktop aplikaciju, ali zelite da server radi u WSL-u:
|
||||
|
||||
@@ -69,7 +69,7 @@ OPENCODE_SERVER_PASSWORD=your-password opencode serve --hostname 0.0.0.0
|
||||
|
||||
---
|
||||
|
||||
## Web Client + WSL
|
||||
## Web klijent + WSL
|
||||
|
||||
Za najbolje web iskustvo na Windowsu:
|
||||
|
||||
@@ -106,7 +106,7 @@ Za najgladje iskustvo, razmislite da klonirate/kopirate repo u WSL fajl sistem (
|
||||
|
||||
---
|
||||
|
||||
## Tips
|
||||
## Savjeti
|
||||
|
||||
- Drzite OpenCode u WSL-u za projekte na Windows diskovima - pristup fajlovima je jednostavan
|
||||
- Koristite VS Code [WSL ekstenziju](https://code.visualstudio.com/docs/remote/wsl) uz OpenCode za integrisan tok rada
|
||||
|
||||
@@ -89,7 +89,7 @@ Nasim modelima mozete pristupiti i preko sljedecih API endpointa.
|
||||
|
||||
---
|
||||
|
||||
### Models
|
||||
### Modeli
|
||||
|
||||
Pun spisak dostupnih modela i metapodataka mozete preuzeti na:
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
title: ACP support
|
||||
title: ACP-understøttelse
|
||||
description: Brug OpenCode i enhver ACP-kompatibel editor.
|
||||
---
|
||||
|
||||
@@ -13,7 +13,7 @@ ACP er en åben protokol, der standardiserer kommunikation mellem kodeeditorer o
|
||||
|
||||
---
|
||||
|
||||
## Konfigurer
|
||||
## Konfiguration
|
||||
|
||||
For at bruge OpenCode via ACP, konfigurer din editor til at køre kommandoen `opencode acp`.
|
||||
|
||||
@@ -140,7 +140,7 @@ Denne konfiguration sætter CodeCompanion til at bruge OpenCode som ACP-agent ti
|
||||
|
||||
Hvis du har brug for at sende miljøvariabler (som `OPENCODE_API_KEY`), henvises til [Konfiguration af adaptere: Miljøvariabler](https://codecompanion.olimorris.dev/getting-started#setting-an-api-key) i CodeCompanion.nvim-dokumentationen for alle detaljer.
|
||||
|
||||
## Support
|
||||
## Understøttelse
|
||||
|
||||
OpenCode fungerer på samme måde via ACP som i terminalen. Alle funktioner understøtter:
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
title: Agent
|
||||
title: Agenter
|
||||
description: Konfigurer og brug specialiserede agenter.
|
||||
---
|
||||
|
||||
@@ -13,13 +13,13 @@ Du kan skifte mellem agenter under en session eller kalde dem med `@`-omtalen.
|
||||
|
||||
---
|
||||
|
||||
## Skriver
|
||||
## Typer
|
||||
|
||||
Der er to typer agenter i OpenCode; primære agenter og subagenter.
|
||||
|
||||
---
|
||||
|
||||
### Primære agent
|
||||
### Primær agent
|
||||
|
||||
Primære agenter er de vigtigste assistenter, du interagerer direkte med. Du kan bladre gennem dem ved at bruge **Tab**-tasten eller din konfigurerede `switch_agent`-tastebinding. Disse agenter håndterer din hovedsamtale. Værktøjsadgang konfigureres via tilladelser - for eksempel har Build alle aktiveret, mens Plan er begrænset.
|
||||
|
||||
@@ -40,13 +40,13 @@ OpenCode leveres med to indbyggede underagenter, **Generelt** og **Udforsk**. Vi
|
||||
|
||||
---
|
||||
|
||||
## Indbygget
|
||||
## Indbyggede
|
||||
|
||||
OpenCode leveres med to indbyggede primære agenter og to indbyggede subagenter.
|
||||
|
||||
---
|
||||
|
||||
### Brug bygge
|
||||
### Build-agenten
|
||||
|
||||
_Tilstand_: `primary`
|
||||
|
||||
@@ -54,7 +54,7 @@ Byg er den **standard** primære agent med alle aktiveret. Dette er standardagen
|
||||
|
||||
---
|
||||
|
||||
### Brug plan
|
||||
### Plan-agenten
|
||||
|
||||
_Tilstand_: `primary`
|
||||
|
||||
@@ -68,7 +68,7 @@ Denne agent er nyttig, når du vil have LLM til at analysere kode, foreslå ænd
|
||||
|
||||
---
|
||||
|
||||
### Brug generelt
|
||||
### General-agenten
|
||||
|
||||
_Tilstand_: `subagent`
|
||||
|
||||
@@ -76,7 +76,7 @@ En agent til generelt formål at undersøge komplekse spørgsmål og udføre opg
|
||||
|
||||
---
|
||||
|
||||
### Brug udforsk
|
||||
### Explore-agenten
|
||||
|
||||
_Tilstand_: `subagent`
|
||||
|
||||
@@ -84,7 +84,7 @@ En hurtig, skrivebeskyttet agent til at udforske kodebaser. Kan ikke ændre file
|
||||
|
||||
---
|
||||
|
||||
### Brug komprimering
|
||||
### Compact-agenten
|
||||
|
||||
_Tilstand_: `primary`
|
||||
|
||||
@@ -92,7 +92,7 @@ Skjult systemagent, der komprimerer lang kontekst til et mindre resumé. Det kø
|
||||
|
||||
---
|
||||
|
||||
### Brug titel
|
||||
### Title-agenten
|
||||
|
||||
_Tilstand_: `primary`
|
||||
|
||||
@@ -100,7 +100,7 @@ Skjult systemagent, der genererer korte sessionstitler. Den kører automatisk og
|
||||
|
||||
---
|
||||
|
||||
### Brug CV
|
||||
### Resume-agenten
|
||||
|
||||
_Tilstand_: `primary`
|
||||
|
||||
@@ -108,7 +108,7 @@ Skjult systemagent, der opretter sessionsoversigter. Den kører automatisk og ka
|
||||
|
||||
---
|
||||
|
||||
## Brug
|
||||
## Anvendelse
|
||||
|
||||
1. For primære agenter skal du bruge tasten **Tab** til at bladre gennem dem under en session. Du kan også bruge din konfigurerede `switch_agent` nøglebinding.
|
||||
|
||||
@@ -128,7 +128,7 @@ Skjult systemagent, der opretter sessionsoversigter. Den kører automatisk og ka
|
||||
|
||||
---
|
||||
|
||||
## Konfigurer
|
||||
## Konfiguration
|
||||
|
||||
Du kan tilpasse de indbyggede agenter eller oprette dine egne gennem konfiguration. Agenter kan konfigureres på følgende måder:
|
||||
|
||||
@@ -216,7 +216,7 @@ Lad os se nærmere på disse konfigurationsmuligheder.
|
||||
|
||||
---
|
||||
|
||||
### Beskrivelse
|
||||
### Beskrivelse (`description`)
|
||||
|
||||
Brug indstillingen `description` til at give en kort beskrivelse af, hvad agenten gør, og hvornår den skal bruges.
|
||||
|
||||
@@ -234,7 +234,7 @@ Dette er en **påkrævet** konfigurationsindstilling.
|
||||
|
||||
---
|
||||
|
||||
### Temperatur
|
||||
### Temperatur (`temperature`)
|
||||
|
||||
Styr tilfældigheden og kreativiteten af LLMs svar med `temperature`-konfigurationen.
|
||||
|
||||
@@ -281,7 +281,7 @@ Hvis ingen temperatur er angivet, bruger OpenCode modelspecifikke standardindsti
|
||||
|
||||
---
|
||||
|
||||
### Maks. skridt
|
||||
### Trin (`steps`)
|
||||
|
||||
Kontrollerer det maksimale antal agent-gentagelser, som en agent kan udføre, før han bliver tvunget til kun at svare med tekst. Dette giver brugere, der ønsker at kontrollere, mulighed for at sætte en grænse for agenthandlinger.
|
||||
|
||||
@@ -307,7 +307,7 @@ Det gamle `maxSteps`-felt er forældet. Brug `steps` i stedet.
|
||||
|
||||
---
|
||||
|
||||
### Deaktiver
|
||||
### Deaktivering (`disable`)
|
||||
|
||||
Indstil til `true` for at deaktivere agenten.
|
||||
|
||||
@@ -323,7 +323,7 @@ Indstil til `true` for at deaktivere agenten.
|
||||
|
||||
---
|
||||
|
||||
### Spørg
|
||||
### Prompt (`prompt`)
|
||||
|
||||
Angiv en brugerdefineret systempromptfil for denne agent med `prompt`-konfigurationen. Promptfilen skal indeholde instruktioner, der er specifikke for agentens formål.
|
||||
|
||||
@@ -341,7 +341,7 @@ Denne sti er i forhold til, hvor konfigurationsfilen er placeret. Så dette virk
|
||||
|
||||
---
|
||||
|
||||
### Model
|
||||
### Model (`model`)
|
||||
|
||||
Brug `model`-konfigurationen til at tilsidesætte modeller for denne agent. Nyttigt til brug af forskellige modeller optimeret til forskellige opgaver. For eksempel en hurtigere model til planlægning, en dygtig model til implementering.
|
||||
|
||||
@@ -363,7 +363,7 @@ Model-id'et i din OpenCode-konfiguration brugerformatet `provider/model-id`. For
|
||||
|
||||
---
|
||||
|
||||
### Værktøjer
|
||||
### Værktøjer (`tools`)
|
||||
|
||||
Kontroller, hvilke værktøjer der er tilgængelige i denne agent med `tools`-konfigurationen. Du kan aktivere eller deaktivere specifikke redskaber ved at indstille dem til `true` eller `false`.
|
||||
|
||||
@@ -410,7 +410,7 @@ Du kan også bruge jokertegn til at styre flere værktøjer på én gang. For ek
|
||||
|
||||
---
|
||||
|
||||
### Tilladelser
|
||||
### Tilladelser (`permission`)
|
||||
|
||||
Du kan konfigurere tilladelser til at administrere, hvilke handlinger og agenter kan udføre. I øjeblikket kan tilladelserne til værktøjerne `edit`, `bash` og `webfetch` konfigureres til:
|
||||
|
||||
@@ -522,7 +522,7 @@ Da den sidste matchningsregel har forrang, skal du sætte jokertegnet `*` først
|
||||
|
||||
---
|
||||
|
||||
### Tilstand
|
||||
### Tilstand (`mode`)
|
||||
|
||||
Styr agentens tilstand med `mode`-konfigurationen. Indstillingen `mode` bruges til at bestemme, hvordan agenten kan bruges.
|
||||
|
||||
@@ -540,7 +540,7 @@ Indstillingen `mode` kan indstilles til `primary`, `subagent` eller `all`. Hvis
|
||||
|
||||
---
|
||||
|
||||
### Skjult
|
||||
### Skjult (`hidden`)
|
||||
|
||||
Skjul en underagent fra `@` autofuldførelsesmenuen med `hidden: true`. Nyttigt for interne underagenter, der kun bør startes programmatisk af andre agenter via opgaveværktøjet.
|
||||
|
||||
@@ -563,7 +563,7 @@ Gælder kun for `mode: subagent`-agent.
|
||||
|
||||
---
|
||||
|
||||
### Opgavetilladelser
|
||||
### Opgavetilladelser (`permission.task`)
|
||||
|
||||
Kontroller, hvilke subagenter en agent kan påkalde via opgaveværktøjet med `permission.task`. Bruger glob-mønstre til fleksibel matchning.
|
||||
|
||||
@@ -596,7 +596,7 @@ Brugere kan altid påkalde enhver underagent direkte via `@` autofuldførelsesme
|
||||
|
||||
---
|
||||
|
||||
### Farve
|
||||
### Farve (`color`)
|
||||
|
||||
Tilpas agentens visuelle udseende i brugergrænsefladen med muligheden `color`. Dette påvirker, hvordan agenter vises i grænsefladen.
|
||||
|
||||
@@ -662,7 +662,7 @@ Kør `opencode models` for at se en liste over de tilgængelige modeller.
|
||||
|
||||
---
|
||||
|
||||
## Opret agent
|
||||
## Oprettelse af agent
|
||||
|
||||
Du kan oprette nye agenter ved hjælp af følgende kommando:
|
||||
|
||||
@@ -680,7 +680,7 @@ Denne interaktive kommando vil:
|
||||
|
||||
---
|
||||
|
||||
## Use cases
|
||||
## Anvendelsesmuligheder
|
||||
|
||||
Her er nogle almindelige use cases for forskellige agenter.
|
||||
|
||||
@@ -702,7 +702,7 @@ Har du en agent, du gerne vil dele? [Send en PR](https://github.com/anomalyco/op
|
||||
|
||||
---
|
||||
|
||||
### Dokumentationsagent
|
||||
### Dokumentations-agent
|
||||
|
||||
```markdown title="~/.config/opencode/agents/docs-writer.md"
|
||||
---
|
||||
@@ -724,7 +724,7 @@ Focus on:
|
||||
|
||||
---
|
||||
|
||||
### Sikkerhedsrevisor
|
||||
### Sikkerheds-agent
|
||||
|
||||
```markdown title="~/.config/opencode/agents/security-auditor.md"
|
||||
---
|
||||
|
||||
@@ -27,7 +27,7 @@ Start OpenCode terminalbrugergrænsefladen.
|
||||
opencode [project]
|
||||
```
|
||||
|
||||
#### Flags
|
||||
#### Flag
|
||||
|
||||
| Flag | Kort | Beskrivelse |
|
||||
| ------------ | ---- | ---------------------------------------------------------------------------- |
|
||||
@@ -76,7 +76,7 @@ opencode web --port 4096 --hostname 0.0.0.0
|
||||
opencode attach http://10.20.30.40:4096
|
||||
```
|
||||
|
||||
#### Flags
|
||||
#### Flag
|
||||
|
||||
| Flag | Kort | Beskrivelse |
|
||||
| ----------- | ---- | -------------------------------- |
|
||||
@@ -185,7 +185,7 @@ Kør GitHub-agenten. Dette bruges typisk i GitHub Actions.
|
||||
opencode github run
|
||||
```
|
||||
|
||||
##### Flags
|
||||
##### Flag
|
||||
|
||||
| Flag | Beskrivelse |
|
||||
| --------- | ---------------------------------------------- |
|
||||
@@ -294,7 +294,7 @@ Du kan eventuelt videregive et udbyder-id for at filtrere modeller efter den udb
|
||||
opencode models anthropic
|
||||
```
|
||||
|
||||
#### Flags
|
||||
#### Flag
|
||||
|
||||
| Flag | Beskrivelse |
|
||||
| ----------- | ----------------------------------------------------------------------- |
|
||||
@@ -333,7 +333,7 @@ opencode serve
|
||||
opencode run --attach http://localhost:4096 "Explain async/await in JavaScript"
|
||||
```
|
||||
|
||||
#### Flags
|
||||
#### Flag
|
||||
|
||||
| Flag | Kort | Beskrivelse |
|
||||
| ------------ | ---- | ----------------------------------------------------------------------------------- |
|
||||
@@ -362,7 +362,7 @@ opencode serve
|
||||
|
||||
Dette starter en HTTP-server, der giver API-adgang til opencode-funktionalitet uden TUI-grænsefladen. Indstil `OPENCODE_SERVER_PASSWORD` for at aktivere HTTP grundlæggende godkendelse (brugernavn er standard til `opencode`).
|
||||
|
||||
#### Flags
|
||||
#### Flag
|
||||
|
||||
| Flag | Beskrivelse |
|
||||
| ------------ | ------------------------------------------------ |
|
||||
@@ -391,7 +391,7 @@ Liste over alle OpenCode sessioner.
|
||||
opencode session list
|
||||
```
|
||||
|
||||
##### Flags
|
||||
##### Flag
|
||||
|
||||
| Flag | Kort | Beskrivelse |
|
||||
| ------------- | ---- | -------------------------------------- |
|
||||
@@ -408,7 +408,7 @@ Vis tokenbrug og omkostningsstatistikker for dine OpenCode-sessioner.
|
||||
opencode stats
|
||||
```
|
||||
|
||||
#### Flags
|
||||
#### Flag
|
||||
|
||||
| Flag | Beskrivelse |
|
||||
| ----------- | --------------------------------------------------------------------------- |
|
||||
@@ -458,7 +458,7 @@ opencode web
|
||||
|
||||
Dette starter en HTTP-server og åbner en webbrowser for at få adgang til OpenCode via en webgrænseflade. Indstil `OPENCODE_SERVER_PASSWORD` for at aktivere HTTP grundlæggende godkendelse (brugernavn er standard til `opencode`).
|
||||
|
||||
#### Flags
|
||||
#### Flag
|
||||
|
||||
| Flag | Beskrivelse |
|
||||
| ------------ | ------------------------------------------------ |
|
||||
@@ -479,7 +479,7 @@ opencode acp
|
||||
|
||||
Denne kommando starter en ACP-server, der kommunikerer via stdin/stdout ved hjælp af nd-JSON.
|
||||
|
||||
#### Flags
|
||||
#### Flag
|
||||
|
||||
| Flag | Beskrivelse |
|
||||
| ------------ | --------------------- |
|
||||
@@ -497,7 +497,7 @@ Afinstaller OpenCode og fjern alle relaterede filer.
|
||||
opencode uninstall
|
||||
```
|
||||
|
||||
#### Flags
|
||||
#### Flag
|
||||
|
||||
| Flag | Kort | Beskrivelse |
|
||||
| --------------- | ---- | ------------------------------------------------ |
|
||||
@@ -536,7 +536,7 @@ opencode upgrade v0.1.48
|
||||
|
||||
---
|
||||
|
||||
## Globalt flag
|
||||
## Globale flag
|
||||
|
||||
opencode CLI tager følgende globale flag.
|
||||
|
||||
@@ -582,7 +582,7 @@ OpenCode kan konfigureres ved hjælp af miljøvariabler.
|
||||
|
||||
---
|
||||
|
||||
### Flags
|
||||
### Flag
|
||||
|
||||
Disse miljøvariabler muliggør eksperimentelle funktioner, der kan ændres eller fjernes.
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ Brugerdefinerede kommandoer er ud over de indbyggede kommandoer som `/init`, `/u
|
||||
|
||||
---
|
||||
|
||||
## Opret kommandofiler
|
||||
## Oprettelse af kommandofiler
|
||||
|
||||
Opret markdown-filer i mappen `commands/` for at definere brugerdefinerede kommandoer.
|
||||
|
||||
@@ -40,7 +40,7 @@ Brug kommandoen ved at skrive `/` efterfulgt af kommandonavnet.
|
||||
|
||||
---
|
||||
|
||||
## Konfigurer
|
||||
## Konfiguration
|
||||
|
||||
Du kan tilføje brugerdefinerede kommandoer gennem OpenCode-konfigurationen eller ved at oprette markdown-filer i `commands/`-mappen.
|
||||
|
||||
@@ -102,7 +102,7 @@ du løber:
|
||||
|
||||
---
|
||||
|
||||
## Spørg config
|
||||
## Prompt-konfiguration
|
||||
|
||||
Spørgsmålene til de brugerdefinerede kommandoer understøtter flere specielle pladsholdere og syntaks.
|
||||
|
||||
@@ -195,7 +195,7 @@ Kommandoer kører i dit projekts rodmappe, og deres output bliver en del af prom
|
||||
|
||||
---
|
||||
|
||||
### Filreferencer
|
||||
### Fil-referencer
|
||||
|
||||
Inkluder filer i din kommando ved hjælp af `@` efterfulgt af filnavnet.
|
||||
|
||||
@@ -218,7 +218,7 @@ Lad os se nærmere på konfigurationsmulighederne.
|
||||
|
||||
---
|
||||
|
||||
### Skabelon
|
||||
### Skabelon (`template`)
|
||||
|
||||
Indstillingen `template` definerer den prompt, der sendes til LLM, når kommandoen udføres.
|
||||
|
||||
@@ -236,7 +236,7 @@ Dette er en **påkrævet** konfigurationsindstilling.
|
||||
|
||||
---
|
||||
|
||||
### Beskrivelse
|
||||
### Beskrivelse (`description`)
|
||||
|
||||
Brug indstillingen `description` til at give en kort beskrivelse af, hvad kommandoen gør.
|
||||
|
||||
@@ -274,7 +274,7 @@ Dette er en **valgfri** konfigurationsindstilling. Hvis det ikke er angivet, er
|
||||
|
||||
---
|
||||
|
||||
### Underopgave
|
||||
### 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,
|
||||
@@ -312,7 +312,7 @@ Dette er en **valgfri** konfigurationsindstilling.
|
||||
|
||||
---
|
||||
|
||||
## Indbygget
|
||||
## Indbyggede kommandoer
|
||||
|
||||
opencode indeholder flere indbyggede kommandoer som `/init`, `/undo`, `/redo`, `/share`, `/help`; [learn more](/docs/tui#commands).
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
title: Konfig
|
||||
title: Konfiguration
|
||||
description: Ved at bruge OpenCode JSON konfig.
|
||||
---
|
||||
|
||||
@@ -23,7 +23,7 @@ OpenCode understøtter både **JSON** og **JSONC** (JSON med kommentarer) format
|
||||
|
||||
---
|
||||
|
||||
## Steder
|
||||
## Placeringer
|
||||
|
||||
Du kan placere din konfiguration et par forskellige steder, og de har en
|
||||
forskellig rækkefølge.
|
||||
@@ -101,7 +101,7 @@ Global config tilsidesætter eksterne organisatoriske standarder.
|
||||
|
||||
---
|
||||
|
||||
### Pr. projekt
|
||||
### Projekt-niveau
|
||||
|
||||
Tilføj `opencode.json` i dit projektrod. Project config har den højeste forrang blandt standard config-filer - den tilsidesætter både globale og eksterne config.
|
||||
|
||||
@@ -128,7 +128,7 @@ Brugerdefineret konfigurationsindlæses mellem globale konfigurationer og projek
|
||||
|
||||
---
|
||||
|
||||
### Brugerdefineret bibliotek
|
||||
### Brugerdefineret mappe
|
||||
|
||||
Angiv en brugerdefineret konfigurationsmappe ved hjælp af `OPENCODE_CONFIG_DIR`
|
||||
miljøvariabel. Dette kort vil blive søgt efter agenter, kommandoer,
|
||||
@@ -208,7 +208,7 @@ Tilgængelige muligheder:
|
||||
|
||||
---
|
||||
|
||||
### Værktøjer
|
||||
### Værktøjer (`tools`)
|
||||
|
||||
Du kan administrere de værktøjer, en LLM kan bruge, gennem indstillingen `tools`.
|
||||
|
||||
@@ -226,7 +226,7 @@ Du kan administrere de værktøjer, en LLM kan bruge, gennem indstillingen `tool
|
||||
|
||||
---
|
||||
|
||||
### Modeller
|
||||
### Modeller (`models`)
|
||||
|
||||
Du kan konfigurere de udbydere og modeller, du vil bruge i din OpenCode-konfiguration, gennem mulighederne `provider`, `model` og `small_model`.
|
||||
|
||||
@@ -299,7 +299,7 @@ Bearer tokens (`AWS_BEARER_TOKEN_BEDROCK` eller `/connect`) har forrang over pro
|
||||
|
||||
---
|
||||
|
||||
### Temaer
|
||||
### Temaer (`themes`)
|
||||
|
||||
Du kan konfigurere det tema, du vil bruge i din OpenCode-konfiguration, gennem indstillingen `theme`.
|
||||
|
||||
@@ -340,7 +340,7 @@ Du kan også definere agenter ved at bruge markdown-filer i `~/.config/opencode/
|
||||
|
||||
---
|
||||
|
||||
### Standardagent
|
||||
### Standardagent (`default_agent`)
|
||||
|
||||
Du kan indstille standardagenten ved at bruge indstillingen `default_agent`. Dette bestemmer, hvilken agent der bruges, når ingen er eksplicit angivet.
|
||||
|
||||
@@ -357,7 +357,7 @@ Denne indstilling gælder på tværs af alle grænseflader: TUI, CLI (`opencode
|
||||
|
||||
---
|
||||
|
||||
### Deling
|
||||
### Deling (`share`)
|
||||
|
||||
Du kan konfigurere funktionen [share](/docs/share) gennem indstillingen `share`.
|
||||
|
||||
@@ -378,7 +378,7 @@ Som standard er deling indstillet til manuel tilstand, hvor du eksplicit skal de
|
||||
|
||||
---
|
||||
|
||||
### Kommandoer
|
||||
### Kommandoer (`command`)
|
||||
|
||||
Du kan konfigurere brugerdefinerede kommandoer til gentagne opgaver gennem indstillingen `command`.
|
||||
|
||||
@@ -404,7 +404,7 @@ Du kan også definere kommandoer ved hjælp af markdown-filer i `~/.config/openc
|
||||
|
||||
---
|
||||
|
||||
### Nøglebindinger
|
||||
### Tastebindinger (`keybinds`)
|
||||
|
||||
Du kan tilpasse dine nøglebindinger gennem indstillingen `keybinds`.
|
||||
|
||||
@@ -419,7 +419,7 @@ Du kan tilpasse dine nøglebindinger gennem indstillingen `keybinds`.
|
||||
|
||||
---
|
||||
|
||||
### Autoopdatering
|
||||
### Auto-opdatering (`autoupdate`)
|
||||
|
||||
OpenCode vil automatisk downloade alle nye opdateringer, når den starter op. Du kan deaktivere dette med indstillingen `autoupdate`.
|
||||
|
||||
@@ -435,7 +435,7 @@ Bemærk, at dette kun virker, hvis det ikke blev installeret ved hjælp af en pa
|
||||
|
||||
---
|
||||
|
||||
### Formatere
|
||||
### Formater (`formatter`)
|
||||
|
||||
Du kan konfigurere kodeformatere gennem indstillingen `formatter`.
|
||||
|
||||
@@ -461,7 +461,7 @@ Du kan konfigurere kodeformatere gennem indstillingen `formatter`.
|
||||
|
||||
---
|
||||
|
||||
### Tilladelser
|
||||
### Tilladelse (`permission`)
|
||||
|
||||
Som standard opencode **tillader alle operationer** uden at kræve eksplicit godkendelse. Du kan ændre dette ved at bruge indstillingen `permission`.
|
||||
|
||||
@@ -481,7 +481,7 @@ For at sikre, at værktøjerne `edit` og `bash` for eksempel kræver brugergodke
|
||||
|
||||
---
|
||||
|
||||
### Komprimering
|
||||
### Komprimering (`compaction`)
|
||||
|
||||
Du kan styre kontekstkomprimeringsadfærd gennem indstillingen `compaction`.
|
||||
|
||||
@@ -500,7 +500,7 @@ Du kan styre kontekstkomprimeringsadfærd gennem indstillingen `compaction`.
|
||||
|
||||
---
|
||||
|
||||
### Watcher
|
||||
### Overvågning (`watcher`)
|
||||
|
||||
Du kan konfigurere ignoreringsmønstre for filovervåger gennem indstillingen `watcher`.
|
||||
|
||||
@@ -517,7 +517,7 @@ Mønstre følger glob-syntaks. Brug dette til at udelukke støjende mapper fra f
|
||||
|
||||
---
|
||||
|
||||
### MCP servere
|
||||
### MCP
|
||||
|
||||
Du kan konfigurere MCP-servere, som du vil bruge, gennem indstillingen `mcp`.
|
||||
|
||||
@@ -532,7 +532,7 @@ Du kan konfigurere MCP-servere, som du vil bruge, gennem indstillingen `mcp`.
|
||||
|
||||
---
|
||||
|
||||
### Plugins
|
||||
### Plugin
|
||||
|
||||
[Plugins](/docs/plugins) udvide OpenCode med brugerdefinerede værktøjer, kroge og integrationer.
|
||||
|
||||
@@ -549,7 +549,7 @@ Placer plugin-filer i `.opencode/plugins/` eller `~/.config/opencode/plugins/`.
|
||||
|
||||
---
|
||||
|
||||
### Instruktioner
|
||||
### Instruktioner (`instructions`)
|
||||
|
||||
Du kan konfigurere brugervejledningen til den model, du kan gennem indstillingen `instructions`.
|
||||
|
||||
@@ -565,7 +565,7 @@ om regler her](/docs/rules).
|
||||
|
||||
---
|
||||
|
||||
### Deaktiverede udbydere
|
||||
### Deaktiverede udbydere (`disabled_providers`)
|
||||
|
||||
Du kan deaktivere udbydere, der indlæses automatisk gennem `disabled_providers`-indstillingen. Dette er nyttigt, når du vil forhindre visse udbydere i at blive indlæst, deres legitimationsoplysninger er tilgængelige.
|
||||
|
||||
@@ -588,7 +588,7 @@ Indstillingen `disabled_providers` accepterer en række udbyder-id'er. Når en u
|
||||
|
||||
---
|
||||
|
||||
### Aktiverede udbydere
|
||||
### Aktiverede udbydere (`enabled_providers`)
|
||||
|
||||
Du kan angive en tilladelsesliste over udbydere gennem muligheden `enabled_providers`. Når den er indstillet, vil kun de angivne udbydere blive aktiveret, og alle andre vil blive ignoreret.
|
||||
|
||||
@@ -609,7 +609,7 @@ Hvis en udbyder optræder i både `enabled_providers` og `disabled_providers`, h
|
||||
|
||||
---
|
||||
|
||||
### Eksperimentel
|
||||
### Eksperimentel (`experimental`)
|
||||
|
||||
Nøglen `experimental` indeholder muligheder, der er under aktiv udvikling.
|
||||
|
||||
@@ -626,13 +626,13 @@ Eksperimentelle muligheder er ikke stabile. De kan ændres eller fjernes uden va
|
||||
|
||||
---
|
||||
|
||||
## Variabel
|
||||
## Variabler
|
||||
|
||||
Du kan bruge variabelsubstitution i dine konfigurationsfiler til at referere til miljøvariabler og filindhold.
|
||||
|
||||
---
|
||||
|
||||
### Env vars
|
||||
### Miljøvariabler
|
||||
|
||||
Brug `{env:VARIABLE_NAME}` til at erstatte miljøvariabler:
|
||||
|
||||
|
||||
@@ -68,7 +68,7 @@ Du kan også tjekke [awesome-opencode](https://github.com/awesome-opencode/aweso
|
||||
|
||||
---
|
||||
|
||||
## Agent
|
||||
## Agenter
|
||||
|
||||
| Navn | Beskrivelse |
|
||||
| ----------------------------------------------------------------- | ------------------------------------------------------------------------- |
|
||||
|
||||
@@ -19,7 +19,7 @@ Sådan kommer du i gang med OpenCode Enterprise:
|
||||
|
||||
---
|
||||
|
||||
## Prøve
|
||||
## Prøveperiode
|
||||
|
||||
OpenCode er open source og gemmer ingen af din kode eller kontekstdata, så dine udviklere kan simpelthen [get started](/docs/) og udføre en prøveversion.
|
||||
|
||||
@@ -75,7 +75,7 @@ prissætning og implementeringsmuligheder.
|
||||
|
||||
---
|
||||
|
||||
### Central Config
|
||||
### Central konfiguration
|
||||
|
||||
Vi kan konfigurere OpenCode til at bruge en enkelt central konfiguration for hele din organisation.
|
||||
|
||||
@@ -99,7 +99,7 @@ Du kan også deaktivere alle andre AI-udbydere og sikre, at alle anmodninger gå
|
||||
|
||||
---
|
||||
|
||||
### Self-hosting
|
||||
### Selv-hosting
|
||||
|
||||
Selvom vi anbefaler at deaktivere delesiderne for at sikre, at dine data aldrig forsvinder
|
||||
din organisation, kan vi også hjælpe dig med at selv hoste dem på din infrastruktur.
|
||||
|
||||
@@ -7,7 +7,7 @@ OpenCode formaterer automatisk filer, efter de er skrevet eller redigeret ved hj
|
||||
|
||||
---
|
||||
|
||||
## Indbygget
|
||||
## Indbyggede
|
||||
|
||||
OpenCode leveres med flere indbyggede formatere til populære sprog og rammer. Nedenfor er en liste over de formatere, understøttede filtypenavne og kommandoer eller konfigurationsmuligheder, der har brug for.
|
||||
|
||||
@@ -54,7 +54,7 @@ Denne proces sker i baggrunden, hvilket sikrer, at dine kodestile vedligeholdes
|
||||
|
||||
---
|
||||
|
||||
## Konfigurer
|
||||
## Konfiguration
|
||||
|
||||
Du kan tilpasse formatere gennem afsnittet `formatter` i din OpenCode-konfiguration.
|
||||
|
||||
|
||||
@@ -114,7 +114,7 @@ OpenCode kan udløses af følgende GitHub hændelser:
|
||||
| `schedule` | Cron-baseret tidsplan | Kør OpenCode efter en tidsplan. Kræver `prompt` input. Output går til logfiler og PR'er (intet problem ved kommentere). |
|
||||
| `workflow_dispatch` | Manuel trigger fra GitHub UI | Udløs OpenCode efter behov via fanen Handlinger. Kræver `prompt` input. Output går til logfiler og PR'er. |
|
||||
|
||||
### Skema Eksempel
|
||||
### Tidsplan eksempel
|
||||
|
||||
Kør OpenCode efter en tidsplan for at udføre automatiske opgaver:
|
||||
|
||||
@@ -154,7 +154,7 @@ For planlagte begivenheder er `prompt` input **påkrævet**, da der ikke er noge
|
||||
|
||||
---
|
||||
|
||||
### Pull Request Eksempel
|
||||
### Pull Request eksempel
|
||||
|
||||
Gennemgå automatisk PR'er, når de åbnes eller opdateres:
|
||||
|
||||
@@ -195,7 +195,7 @@ For `pull_request` hændelser, hvis der ikke er angivet nogen `prompt`, vil Open
|
||||
|
||||
---
|
||||
|
||||
### Issues Triage Eksempel
|
||||
### Issues Triage eksempel
|
||||
|
||||
Triage automatisk nye problemer. Dette eksempel filtrerer til konti ældre end 30 dage for at reducere spam:
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
title: Intro
|
||||
title: Introduktion
|
||||
description: Kom godt i gang med OpenCode.
|
||||
---
|
||||
|
||||
@@ -29,7 +29,7 @@ For at bruge OpenCode i din terminal skal du bruge:
|
||||
|
||||
---
|
||||
|
||||
## Installationsprogram
|
||||
## Installation
|
||||
|
||||
Den nemmeste måde at installere OpenCode på er gennem installationsscriptet.
|
||||
|
||||
@@ -129,7 +129,7 @@ Du kan også få fat i binæren fra [Releases](https://github.com/anomalyco/open
|
||||
|
||||
---
|
||||
|
||||
## Konfigurer
|
||||
## Konfiguration
|
||||
|
||||
Med OpenCode kan du bruge enhver LLM udbyder ved at konfigurere deres API-nøgler.
|
||||
|
||||
@@ -158,7 +158,7 @@ Alternativt kan du vælge en af de andre udbydere. [Læs mere](/docs/provi
|
||||
|
||||
---
|
||||
|
||||
## Initialiser
|
||||
## Initialisering
|
||||
|
||||
Nu hvor du har konfigureret en udbyder, kan du navigere til et projekt, der
|
||||
du vil arbejde på.
|
||||
@@ -333,7 +333,7 @@ Eller du **kan gentage** ændringerne ved hjælp af kommandoen `/redo`.
|
||||
|
||||
---
|
||||
|
||||
## Del
|
||||
## Deling
|
||||
|
||||
De samtaler, du har med OpenCode, kan [deles med din
|
||||
team](/docs/share).
|
||||
@@ -352,7 +352,7 @@ Her er en [eksempelsamtale](https://opencode.ai/s/4XP1fce5) med OpenCode.
|
||||
|
||||
---
|
||||
|
||||
## Tilpas
|
||||
## Tilpasning
|
||||
|
||||
Og det er det! Du er nu en professionel i at bruge OpenCode.
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
title: Nøglebind
|
||||
title: Tastebindinger
|
||||
description: Tilpas dine nøglebindinger.
|
||||
---
|
||||
|
||||
@@ -105,7 +105,7 @@ OpenCode har en liste over nøglebindinger, som du kan tilpasse gennem OpenCode-
|
||||
|
||||
---
|
||||
|
||||
## Ledernøgle
|
||||
## Ledertast
|
||||
|
||||
OpenCode bruger en `leader` nøgle til de fleste smagsbindinger. Dette undgår konflikter i din terminal.
|
||||
|
||||
@@ -115,7 +115,7 @@ Du behøver ikke bruge en ledernøgle til dine nøglebindinger, men vi anbefaler
|
||||
|
||||
---
|
||||
|
||||
## Deaktiver smagsbinding
|
||||
## Deaktiver tastebinding
|
||||
|
||||
Du kan deaktivere en nøglebinding ved at tilføje nøglen til din konfiguration med værdien "ingen".
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
title: LSP Servere
|
||||
title: LSP-servere
|
||||
description: OpenCode integreres med dine LSP-servere.
|
||||
---
|
||||
|
||||
@@ -7,7 +7,7 @@ OpenCode integreres med Language Server Protocol (LSP) for at hjælpe LLM med at
|
||||
|
||||
---
|
||||
|
||||
## Indbygget
|
||||
## Indbyggede
|
||||
|
||||
OpenCode leveres med flere indbyggede LSP-servere til populære sprog:
|
||||
|
||||
@@ -63,7 +63,7 @@ Når opencode åbner en fil, vil den:
|
||||
|
||||
---
|
||||
|
||||
## Konfigurer
|
||||
## Konfiguration
|
||||
|
||||
Du kan tilpasse LSP-servere gennem sektionen `lsp` i din opencode-konfiguration.
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
title: MCP servere
|
||||
title: MCP-servere
|
||||
description: Tilføj lokale og eksterne MCP værktøjer.
|
||||
---
|
||||
|
||||
@@ -9,7 +9,7 @@ Når de er tilføjet, er MCP automatisk tilgængelig for LLM sammen med indbygge
|
||||
|
||||
---
|
||||
|
||||
#### Caveats
|
||||
#### Forbehold
|
||||
|
||||
Når du bruger en MCP-server, føjes den til konteksten. Dette kan hurtigt stige, hvis du har mange værktøjer. Så vi anbefaler at være forsigtig med hvilke MCP-servere du bruger.
|
||||
|
||||
@@ -21,7 +21,7 @@ Visse MCP-servere, som GitHub MCP-servere, har en tendens til at tilføje mange
|
||||
|
||||
---
|
||||
|
||||
## Aktiver
|
||||
## Aktivering
|
||||
|
||||
Du kan definere MCP-servere i din [OpenCode Config](https://opencode.ai/docs/config/) under `mcp`. Tilføj hver MCP med et unikt navn. Du kan henvise til denne MCP ved navn, når du spørger LLM.
|
||||
|
||||
@@ -44,7 +44,7 @@ Du kan også deaktivere en server ved at indstille `enabled` til `false`. Dette
|
||||
|
||||
---
|
||||
|
||||
### Overriding remote defaults
|
||||
### Tilsidesættelse af eksterne standarder
|
||||
|
||||
Organisationer kan levere standard MCP-servere via deres `.well-known/opencode`-slutpunkt. Disse servere kan være deaktiveret som standard, hvilket giver brugerne mulighed for at tilmelde sig dem, de har brug for.
|
||||
|
||||
@@ -112,7 +112,7 @@ use the mcp_everything tool to add the number 3 and 4
|
||||
|
||||
---
|
||||
|
||||
#### Options
|
||||
#### Indstillinger
|
||||
|
||||
Her er alle muligheder for at konfigurere en lokal MCP-server.
|
||||
|
||||
@@ -126,7 +126,7 @@ Her er alle muligheder for at konfigurere en lokal MCP-server.
|
||||
|
||||
---
|
||||
|
||||
## Remote
|
||||
## Ekstern
|
||||
|
||||
Tilføj ekstern MCP-server ved at indstille `type` til `"remote"`.
|
||||
|
||||
@@ -150,7 +150,7 @@ Tilføj ekstern MCP-server ved at indstille `type` til `"remote"`.
|
||||
|
||||
---
|
||||
|
||||
#### Options
|
||||
#### Indstillinger
|
||||
|
||||
| Mulighed | Skriv | Påkrævet | Beskrivelse |
|
||||
| --------- | ------- | -------- | ------------------------------------------------------------------------------------ |
|
||||
@@ -173,7 +173,7 @@ OpenCode håndterer automatisk OAuth-godkendelse for eksterne MCP-servere. Når
|
||||
|
||||
---
|
||||
|
||||
### Automatic
|
||||
### Automatisk
|
||||
|
||||
For de fleste OAuth-aktiverede MCP-servere kræver ingen speciel konfiguration. Bare konfigureret fjernserver:
|
||||
|
||||
@@ -193,7 +193,7 @@ Hvis serveren kræver godkendelse, vil OpenCode bede dig om at godkende, når du
|
||||
|
||||
---
|
||||
|
||||
### Pre-registered
|
||||
### Forhåndsregistreret
|
||||
|
||||
Hvis du har klientlegitimationsoplysninger fra MCP-serverudbyderen, kan du konfigurere dem:
|
||||
|
||||
@@ -216,7 +216,7 @@ Hvis du har klientlegitimationsoplysninger fra MCP-serverudbyderen, kan du konfi
|
||||
|
||||
---
|
||||
|
||||
### Authenticating
|
||||
### Godkendelse
|
||||
|
||||
Du kan manuelt udløse godkendelse eller administrere legitimationsoplysninger.
|
||||
|
||||
@@ -242,7 +242,7 @@ Kommandoen `mcp auth` åbner din browser for godkendelse. Når du har godkendt,
|
||||
|
||||
---
|
||||
|
||||
#### Disabling OAuth
|
||||
#### Deaktivering af OAuth
|
||||
|
||||
Hvis du vil deaktivere automatisk OAuth for en server (f.eks. for servere, der bruger API-nøgler i stedet), skal du indstille `oauth` til `false`:
|
||||
|
||||
@@ -264,7 +264,7 @@ Hvis du vil deaktivere automatisk OAuth for en server (f.eks. for servere, der b
|
||||
|
||||
---
|
||||
|
||||
#### OAuth Options
|
||||
#### OAuth-indstillinger
|
||||
|
||||
| Mulighed | Skriv | Beskrivelse |
|
||||
| -------------- | --------------- | ----------------------------------------------------------------------------------------- |
|
||||
@@ -273,7 +273,7 @@ Hvis du vil deaktivere automatisk OAuth for en server (f.eks. for servere, der b
|
||||
| `clientSecret` | String | OAuth-klienthemmelighed, hvis det kræves af autorisationsserveren. |
|
||||
| `scope` | String | OAuth-omfang at anmode om under godkendelse. |
|
||||
|
||||
#### Debugging
|
||||
#### Fejlfinding
|
||||
|
||||
Hvis en ekstern MCP-server ikke kan godkendes, kan du diagnosticere problemer med:
|
||||
|
||||
@@ -289,7 +289,7 @@ Kommandoen `mcp debug` viser den aktuelle godkendelsesstatus, tester HTTP-forbin
|
||||
|
||||
---
|
||||
|
||||
## Administrator
|
||||
## Administration
|
||||
|
||||
Dine MCPs er tilgængelige som værktøjer i **TK\_** sammen med indbyggede værktøjer. Så du kan administrere dem gennem OpenCode-konfigurationen som ethvert andet værktøj.
|
||||
|
||||
@@ -375,7 +375,7 @@ Hvis du har et stort antal MCP-servere, vil du måske kun aktivere dem pr. agent
|
||||
|
||||
---
|
||||
|
||||
#### Glob patterns
|
||||
#### Glob-mønstre
|
||||
|
||||
Glob-mønsteret bruger simple regex-globing-mønstre:
|
||||
|
||||
|
||||
@@ -64,7 +64,7 @@ Hvis du har konfigureret en [custom provider](/docs/providers#custom), er `provi
|
||||
|
||||
---
|
||||
|
||||
## Konfigurer modeller
|
||||
## Konfiguration af modeller
|
||||
|
||||
Du kan konfigurere en models muligheder globalt gennem konfigurationen.
|
||||
|
||||
@@ -195,13 +195,13 @@ Du kan tilsidesætte eksisterende varianter eller tilføje dine egne:
|
||||
}
|
||||
```
|
||||
|
||||
### Cyklusvarianter
|
||||
### Skift varianter
|
||||
|
||||
Brug tastebindingen `variant_cycle` til hurtigt at skifte mellem varianter. [Learn more](/docs/keybinds).
|
||||
|
||||
---
|
||||
|
||||
## Indlæser modeller
|
||||
## Indlæsning af modeller
|
||||
|
||||
Når OpenCode starter op, søger den efter modeller i følgende prioriterede rækkefølge:
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@ Du kan skifte mellem tilstande under en session eller konfigurere dem i din konf
|
||||
|
||||
---
|
||||
|
||||
## Indbygget
|
||||
## Indbyggede
|
||||
|
||||
opencode leveres med to indbyggede tilstande.
|
||||
|
||||
@@ -42,7 +42,7 @@ Denne tilstand er nyttig, når du vil have AI til at analysere kode, foreslå æ
|
||||
|
||||
---
|
||||
|
||||
## Skifter
|
||||
## Skift
|
||||
|
||||
Du kan skifte mellem tilstande under en session ved at bruge _Tab_-tasten. Eller din konfigurerede `switch_mode` nøglebinding.
|
||||
|
||||
@@ -50,11 +50,11 @@ Se også: [Formatters](/docs/formatters) for information om konfiguration af kod
|
||||
|
||||
---
|
||||
|
||||
## Konfigurer
|
||||
## Konfiguration
|
||||
|
||||
Du kan tilpasse de indbyggede tilstande eller oprette dine egne gennem konfiguration. Tilstande kan konfigureres på to måder:
|
||||
|
||||
### JSON Konfiguration
|
||||
### JSON-konfiguration
|
||||
|
||||
Konfigurer tilstande i din `opencode.json`-konfigurationsfil:
|
||||
|
||||
@@ -177,7 +177,7 @@ Hvis der ikke er angivet nogen temperatur, bruger opencode modelspecifikke stand
|
||||
|
||||
---
|
||||
|
||||
### Spørg
|
||||
### Prompt
|
||||
|
||||
Angiv en brugerdefineret systempromptfil for denne tilstand med `prompt`-konfigurationen. Promptfilen skal indeholde instruktioner, der er specifikke for tilstandens formål.
|
||||
|
||||
@@ -245,7 +245,7 @@ Her er alle de værktøjer, der kan styres gennem tilstandskonfigurationen.
|
||||
|
||||
Du kan oprette dine egne brugerdefinerede tilstande ved at tilføje dem til konfigurationen. Her er eksempler, der bruger begge tilgange:
|
||||
|
||||
### Bruger JSON konfiguration
|
||||
### Brug af JSON-konfiguration
|
||||
|
||||
```json title="opencode.json" {4-14}
|
||||
{
|
||||
@@ -318,7 +318,7 @@ Priorities:
|
||||
|
||||
---
|
||||
|
||||
### Use cases
|
||||
### Brugsscenarier
|
||||
|
||||
Her er nogle almindelige brugstilfælde for forskellige tilstande.
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@ Du kan konfigurere serverens port og værtsnavn ved hjælp af [CLI flags](/docs/
|
||||
|
||||
---
|
||||
|
||||
### Godkend
|
||||
### Godkendelse
|
||||
|
||||
Hvis din proxy kræver grundlæggende godkendelse, skal du inkludere legitimationsoplysninger i URL.
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@ For eksempler, tjek [plugins](/docs/ecosystem#plugins) oprettet af fællesskabet
|
||||
|
||||
---
|
||||
|
||||
## Brug et plugin
|
||||
## Brug af plugin
|
||||
|
||||
Der er to måder at indlæse plugins på.
|
||||
|
||||
@@ -43,7 +43,7 @@ Gennemse tilgængelige plugins i [ecosystem](/docs/ecosystem#plugins).
|
||||
|
||||
---
|
||||
|
||||
### Hvordan plugins installeres
|
||||
### Installation af plugins
|
||||
|
||||
**npm plugins** installeres automatisk ved hjælp af Bun ved opstart. Pakker og deres afhængigheder cachelagres i `~/.cache/opencode/node_modules/`.
|
||||
|
||||
@@ -51,7 +51,7 @@ Gennemse tilgængelige plugins i [ecosystem](/docs/ecosystem#plugins).
|
||||
|
||||
---
|
||||
|
||||
### Indlæs rækkefølge
|
||||
### Indlæsningsrækkefølge
|
||||
|
||||
Plugins indlæses fra alle kilder, og alle hooks kører i rækkefølge. Indlæsningsrækkefølgen er:
|
||||
|
||||
@@ -64,7 +64,7 @@ Dublerede npm-pakker med samme navn og version indlæses én gang. Et lokalt plu
|
||||
|
||||
---
|
||||
|
||||
## Opret et plugin
|
||||
## Oprettelse af plugin
|
||||
|
||||
Et plugin er et **JavaScript/TypeScript modul**, der eksporterer et eller flere plugin
|
||||
funktioner. Hver funktion modtager et kontekstobjekt og returnerer et hooks-objekt.
|
||||
@@ -156,7 +156,7 @@ Plugins kan abonnere på begivenheder som vist nedenfor i afsnittet Eksempler. H
|
||||
|
||||
- `installation.updated`
|
||||
|
||||
#### LSP Begivenheder
|
||||
#### LSP-hændelser
|
||||
|
||||
- `lsp.client.diagnostics`
|
||||
- `lsp.updated`
|
||||
@@ -168,7 +168,7 @@ Plugins kan abonnere på begivenheder som vist nedenfor i afsnittet Eksempler. H
|
||||
- `message.removed`
|
||||
- `message.updated`
|
||||
|
||||
#### Tilladelsesbegivenheder
|
||||
#### Tilladelseshændelser
|
||||
|
||||
- `permission.asked`
|
||||
- `permission.replied`
|
||||
@@ -177,7 +177,7 @@ Plugins kan abonnere på begivenheder som vist nedenfor i afsnittet Eksempler. H
|
||||
|
||||
- `server.connected`
|
||||
|
||||
#### Sessionsbegivenheder
|
||||
#### Sessionshændelser
|
||||
|
||||
- `session.created`
|
||||
- `session.compacted`
|
||||
@@ -188,20 +188,20 @@ Plugins kan abonnere på begivenheder som vist nedenfor i afsnittet Eksempler. H
|
||||
- `session.status`
|
||||
- `session.updated`
|
||||
|
||||
#### Todo-begivenheder
|
||||
#### Todo-hændelser
|
||||
|
||||
- `todo.updated`
|
||||
|
||||
#### Shell-begivenheder
|
||||
#### Shell-hændelser
|
||||
|
||||
- `shell.env`
|
||||
|
||||
#### Værktøjsbegivenheder
|
||||
#### Værktøjshændelser
|
||||
|
||||
- `tool.execute.after`
|
||||
- `tool.execute.before`
|
||||
|
||||
#### TUI Begivenheder
|
||||
#### TUI-hændelser
|
||||
|
||||
- `tui.prompt.append`
|
||||
- `tui.command.execute`
|
||||
@@ -240,7 +240,7 @@ Hvis du bruger OpenCode desktop-appen, kan den sende systemmeddelelser automatis
|
||||
|
||||
---
|
||||
|
||||
###.env-beskyttelse
|
||||
### .env-beskyttelse
|
||||
|
||||
Undgå opencode i at læse `.env` filer:
|
||||
|
||||
@@ -331,7 +331,7 @@ Niveauer: `debug`, `info`, `warn`, `error`. Se [SDK documentation](https://openc
|
||||
|
||||
---
|
||||
|
||||
### Komprimeringskroge
|
||||
### Komprimerings-hooks
|
||||
|
||||
Tilpas konteksten inkluderet, når en session komprimeres:
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,13 +1,13 @@
|
||||
---
|
||||
title: Regler
|
||||
description: Set custom instructions for opencode.
|
||||
description: Angiv tilpassede instruktioner til opencode.
|
||||
---
|
||||
|
||||
Du kan gi tilpassede instruksjoner for at OpenCode ved at oprete en `AGENTS.md`-fil. Dette ligner på Cursors regler. Den inneholder instruksjoner som vil bli inkludert i LLMs kontekst for at tilpasse oppførselen til ditt spesifikke prosjekt.
|
||||
|
||||
---
|
||||
|
||||
## Initialiser
|
||||
## Initialisering
|
||||
|
||||
For at lage en ny `AGENTS.md` fil, kan du kjøre kommandoen `/init` i opencode.
|
||||
|
||||
@@ -56,7 +56,7 @@ Vi tilføjer til prosjektspesifikke instruksjoner her, og dette vil bli delt på
|
||||
|
||||
opencode støtter også lesing av `AGENTS.md`-filen fra flere steder. Og dette tjener forskjellige formål.
|
||||
|
||||
### Prosjekt
|
||||
### Projekt
|
||||
|
||||
Plasser en `AGENTS.md` i prosjektroten for prosjektspesifikke regler. Disse gjelder kun når du arbeider i denne katalogen eller dens underkataloger.
|
||||
|
||||
@@ -66,7 +66,7 @@ Du kan også ha globale regler i en `~/.config/opencode/AGENTS.md`-fil. Dette bl
|
||||
|
||||
Siden dette ikke er forpliktet til Git eller delt med teamet ditt, anbefaler vi at bruge dette til at spesifisere eventuelle personlige regler som LLM bør følge.
|
||||
|
||||
### Claude-kodekompatibilitet
|
||||
### Claude Code-kompatibilitet
|
||||
|
||||
For brugere som migrerer fra Claude Code, støtter OpenCode Claude Codes filkonvensjoner som fallbacks:
|
||||
|
||||
@@ -84,7 +84,7 @@ export OPENCODE_DISABLE_CLAUDE_CODE_SKILLS=1 # Disable only .claude/skills
|
||||
|
||||
---
|
||||
|
||||
## Forrang
|
||||
## Prioritet
|
||||
|
||||
Når opencode starter, ser den etter regelfiler i denne rekkefølgen:
|
||||
|
||||
@@ -96,7 +96,7 @@ Den første matchende filen vinner i hver kategori. For eksempel, hvis du har b
|
||||
|
||||
---
|
||||
|
||||
## Egendefinerte instruksjoner
|
||||
## Brugerdefinerede instruktioner
|
||||
|
||||
Du kan spesifisere egendefinerte instruksjonsfiler i din `opencode.json` eller den globale `~/.config/opencode/opencode.json`. Dette lar deg og teamet ditt gjenbruge eksisterende regler i stedet for at måtte duplisere dem til AGENTS.md.
|
||||
|
||||
@@ -124,11 +124,11 @@ Alle instruksjonsfilene er kombinert med `AGENTS.md`-filene dine.
|
||||
|
||||
---
|
||||
|
||||
## Refererer til eksterne filer
|
||||
## Reference til eksterne filer
|
||||
|
||||
Selv om opencode ikke automatisk analyserer filreferanser i `AGENTS.md`, kan du oppnå lignende funksjonalitet på to måter:
|
||||
|
||||
### Bruger opencode.json
|
||||
### Brug af opencode.json
|
||||
|
||||
Den anbefalte tilnærmingen er at bruge feltet `instructions` i `opencode.json`:
|
||||
|
||||
@@ -139,7 +139,7 @@ Den anbefalte tilnærmingen er at bruge feltet `instructions` i `opencode.json`:
|
||||
}
|
||||
```
|
||||
|
||||
### Manuelle instruksjoner i AGENTS.md
|
||||
### Manuelle instruktioner i AGENTS.md
|
||||
|
||||
Du kan lære opencode at lese eksterne filer ved at gi eksplisitte instruksjoner i `AGENTS.md`. Her er et praktisk eksempel:
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ Brug den til at bygge integrasjoner og kontrollere opencode programmatisk.
|
||||
|
||||
---
|
||||
|
||||
## Installer
|
||||
## Installation
|
||||
|
||||
Installer SDK fra npm:
|
||||
|
||||
@@ -35,7 +35,7 @@ const { client } = await createOpencode()
|
||||
|
||||
Dette starter både en server og en klient
|
||||
|
||||
#### Alternativer
|
||||
#### Indstillinger
|
||||
|
||||
| Alternativ | Skriv | Beskrivelse | Standard |
|
||||
| ---------- | ------------- | -------------------------------- | ----------- |
|
||||
@@ -79,7 +79,7 @@ const client = createOpencodeClient({
|
||||
})
|
||||
```
|
||||
|
||||
#### Alternativer
|
||||
#### Indstillinger
|
||||
|
||||
| Alternativ | Skriv inn | Beskrivelse | Standard |
|
||||
| --------------- | ---------- | ---------------------------------- | ----------------------- |
|
||||
@@ -103,7 +103,7 @@ Alle typer er generert fra serverens OpenAPI-spesifikasjon og tilgængelig i <a
|
||||
|
||||
---
|
||||
|
||||
## Feil
|
||||
## Fejl
|
||||
|
||||
SDK kan gi feil som du kan fange opp og håndtere:
|
||||
|
||||
@@ -117,7 +117,7 @@ try {
|
||||
|
||||
---
|
||||
|
||||
## APIer
|
||||
## API'er
|
||||
|
||||
SDK avslører alle server-APIer gjennom en typesikker klient.
|
||||
|
||||
@@ -167,7 +167,7 @@ const agents = await client.app.agents()
|
||||
|
||||
---
|
||||
|
||||
### Prosjekt
|
||||
### Projekt
|
||||
|
||||
| Metode | Beskrivelse | Svar |
|
||||
| ------------------- | -------------------------- | ---------------------------------------------- |
|
||||
@@ -205,7 +205,7 @@ const pathInfo = await client.path.get()
|
||||
|
||||
---
|
||||
|
||||
### Konfig
|
||||
### Konfiguration
|
||||
|
||||
| Metode | Beskrivelse | Svar |
|
||||
| -------------------- | -------------------------------------- | ----------------------------------------------------------------------------------------------------- |
|
||||
@@ -224,7 +224,7 @@ const { providers, default: defaults } = await client.config.providers()
|
||||
|
||||
---
|
||||
|
||||
### sessioner
|
||||
### Sessioner
|
||||
|
||||
| Metode | Beskrivelse | Noter |
|
||||
| ---------------------------------------------------------- | --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
|
||||
@@ -353,7 +353,7 @@ await client.tui.showToast({
|
||||
|
||||
---
|
||||
|
||||
### Auth
|
||||
### Godkendelse
|
||||
|
||||
| Metode | Beskrivelse | Svar |
|
||||
| ------------------- | ------------------------------- | --------- |
|
||||
@@ -372,7 +372,7 @@ await client.auth.set({
|
||||
|
||||
---
|
||||
|
||||
### Hendelser
|
||||
### Hændelser
|
||||
|
||||
| Metode | Beskrivelse | Svar |
|
||||
| ------------------- | ------------------------------ | ------------------------------ |
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
---
|
||||
title: Server
|
||||
description: Samhandle med opencode-server over HTTP.
|
||||
description: Interager med opencode-serveren over HTTP.
|
||||
---
|
||||
|
||||
import config from "../../../../config.mjs"
|
||||
export const typesUrl = `${config.github}/blob/dev/packages/sdk/js/src/gen/types.gen.ts`
|
||||
|
||||
Kommandoen `opencode serve` kjører en hodeløs HTTP-server som avslører et OpenAPI-endepunkt som en opencode-klient kan bruge.
|
||||
Kommandoen `opencode serve` kører en hovedløs HTTP-server, som afslører et OpenAPI-endpoint, som en opencode-klient kan bruge.
|
||||
|
||||
---
|
||||
|
||||
@@ -16,17 +16,17 @@ Kommandoen `opencode serve` kjører en hodeløs HTTP-server som avslører et Ope
|
||||
opencode serve [--port <number>] [--hostname <string>] [--cors <origin>]
|
||||
```
|
||||
|
||||
#### Alternativer
|
||||
#### Indstillinger
|
||||
|
||||
| Flagg | Beskrivelse | Standard |
|
||||
| --------------- | ----------------------------------------------- | ---------------- |
|
||||
| `--port` | Port at lytte på | `4096` |
|
||||
| `--hostname` | Vertsnavn at lytte på | `127.0.0.1` |
|
||||
| `--mdns` | Aktiver mDNS-oppdagelse | `false` |
|
||||
| `--mdns-domain` | Egendefinert domenenavn for mDNS-tjeneste | `opencode.local` |
|
||||
| `--cors` | Ytterligere nettleseropprinnelse for at tillate | `[]` |
|
||||
| Flag | Beskrivelse | Standard |
|
||||
| --------------- | -------------------------------------------- | ---------------- |
|
||||
| `--port` | Port at lytte på | `4096` |
|
||||
| `--hostname` | Værtsnavn at lytte på | `127.0.0.1` |
|
||||
| `--mdns` | Aktiver mDNS-opdagelse | `false` |
|
||||
| `--mdns-domain` | Brugerdefineret domænenavn for mDNS-tjeneste | `opencode.local` |
|
||||
| `--cors` | Yderligere browseroprindelse for at tillade | `[]` |
|
||||
|
||||
`--cors` kan passeres flere ganger:
|
||||
`--cors` kan angives flere gange:
|
||||
|
||||
```bash
|
||||
opencode serve --cors http://localhost:5173 --cors https://app.example.com
|
||||
@@ -34,9 +34,9 @@ opencode serve --cors http://localhost:5173 --cors https://app.example.com
|
||||
|
||||
---
|
||||
|
||||
### Autentisering
|
||||
### Godkendelse
|
||||
|
||||
Sett `OPENCODE_SERVER_PASSWORD` for at beskytte serveren med HTTP grunntilføjende autentisering. Brugernavnet er standard til `opencode`, eller sett `OPENCODE_SERVER_USERNAME` for at overstyre det. Dette gjelder både `opencode serve` og `opencode web`.
|
||||
Indstil `OPENCODE_SERVER_PASSWORD` for at beskytte serveren med HTTP grundlæggende godkendelse. Brugernavnet er som standard `opencode`, eller indstil `OPENCODE_SERVER_USERNAME` for at tilsidesætte det. Dette gælder både `opencode serve` og `opencode web`.
|
||||
|
||||
```bash
|
||||
OPENCODE_SERVER_PASSWORD=your-password opencode serve
|
||||
@@ -44,46 +44,46 @@ OPENCODE_SERVER_PASSWORD=your-password opencode serve
|
||||
|
||||
---
|
||||
|
||||
### Slik fungerer det
|
||||
### Sådan fungerer det
|
||||
|
||||
Når du kjører `opencode` starter den en TUI og en server. Der TUI er
|
||||
klient som snakker med serveren. Serveren viser en OpenAPI 3.1-spesifikasjon
|
||||
endepunkt. Dette endepunktet bruges også til at generere en [SDK](/docs/sdk).
|
||||
Når du kører `opencode` starter den en TUI og en server. Hvor TUI er
|
||||
klient som taler med serveren. Serveren viser en OpenAPI 3.1-specifikation
|
||||
endpoint. Dette endpoint bruges også til at generere en [SDK](/docs/sdk).
|
||||
|
||||
:::tip
|
||||
Brug opencode-serveren til at samhandle med opencode programmatisk.
|
||||
Brug opencode-serveren til at interagere med opencode programmatisk.
|
||||
:::
|
||||
|
||||
Denne arkitekturen lar opencode støtte flere klienter og lar deg samhandle med opencode programmatisk.
|
||||
Denne arkitektur lader opencode understøtte flere klienter og lader dig interagere med opencode programmatisk.
|
||||
|
||||
Du kan kjøre `opencode serve` for at starte en frittstående server. Hvis du har
|
||||
opencode TUI kjører, vil `opencode serve` starte en ny server.
|
||||
Du kan køre `opencode serve` for at starte en selvstændig server. Hvis du har
|
||||
opencode TUI kørende, vil `opencode serve` starte en ny server.
|
||||
|
||||
---
|
||||
|
||||
#### Koble til en eksisterende server
|
||||
#### Opret forbindelse til en eksisterende server
|
||||
|
||||
Når du starter TUI, tildeler den tilfeldig en port og vertsnavn. Du kan i stedet sende inn `--hostname` og `--port` [flagg](/docs/cli). Brug deretter denne til at koble til serveren.
|
||||
Når du starter TUI, tildeler den tilfældigt en port og et værtsnavn. Du kan i stedet sende `--hostname` og `--port` [flagene](/docs/cli). Brug derefter disse til at forbinde til serveren.
|
||||
|
||||
[`/tui`](#tui) endepunktet kan bruges til at kjøre TUI gjennom serveren. Du kan for eksempel forhåndsutfylle eller kjøre en forespørsel. Dette oppsettet bruges av OpenCode [IDE](/docs/ide) plugins.
|
||||
[`/tui`](#tui) endpointet kan bruges til at køre TUI gennem serveren. Du kan for eksempel forududfylde eller køre en forespørgsel. Denne opsætning bruges af OpenCode [IDE](/docs/ide) plugins.
|
||||
|
||||
---
|
||||
|
||||
## Spes
|
||||
## Specifikation
|
||||
|
||||
Serveren publiserer en OpenAPI 3.1-spesifikasjon som kan vises på:
|
||||
Serveren publicerer en OpenAPI 3.1-specifikation som kan vises på:
|
||||
|
||||
```
|
||||
http://<hostname>:<port>/doc
|
||||
```
|
||||
|
||||
For eksempel `http://localhost:4096/doc`. Brug spesifikasjonen til at generere klienter eller inspisere forespørsels- og svartyper. Eller se den i en Swagger-utforsker.
|
||||
For eksempel `http://localhost:4096/doc`. Brug specifikationen til at generere klienter eller inspicere forespørgsels- og svartyper. Eller se den i en Swagger-utforsker.
|
||||
|
||||
---
|
||||
|
||||
## APIer
|
||||
## API'er
|
||||
|
||||
OpenCode-serveren viser følgende APIer.
|
||||
OpenCode-serveren viser følgende API'er.
|
||||
|
||||
---
|
||||
|
||||
@@ -91,142 +91,142 @@ OpenCode-serveren viser følgende APIer.
|
||||
|
||||
| Metode | Sti | Beskrivelse | Svar |
|
||||
| ------ | ---------------- | -------------------------------- | ------------------------------------ |
|
||||
| `GET` | `/global/health` | Få serverhelse og versjon | `{ healthy: true, version: string }` |
|
||||
| `GET` | `/global/event` | Få globale hendelser (SSE strøm) | Eventstrøm |
|
||||
| `GET` | `/global/health` | Få serverhelbred og version | `{ healthy: true, version: string }` |
|
||||
| `GET` | `/global/event` | Få globale hændelser (SSE strøm) | Eventstrøm |
|
||||
|
||||
---
|
||||
|
||||
### Prosjekt
|
||||
### Projekt
|
||||
|
||||
| Metode | Sti | Beskrivelse | Svar |
|
||||
| ------ | ------------------ | --------------------------- | ---------------------------------------------- |
|
||||
| `GET` | `/project` | Liste over alle prosjekter | <a href={typesUrl}><code>Prosjekt[]</code></a> |
|
||||
| `GET` | `/project/current` | Få det nåværende prosjektet | <a href={typesUrl}><code>Prosjekt</code></a> |
|
||||
| Metode | Sti | Beskrivelse | Svar |
|
||||
| ------ | ------------------ | ------------------------- | --------------------------------------------- |
|
||||
| `GET` | `/project` | Liste over alle projekter | <a href={typesUrl}><code>Project[]</code></a> |
|
||||
| `GET` | `/project/current` | Få det nuværende projekt | <a href={typesUrl}><code>Project</code></a> |
|
||||
|
||||
---
|
||||
|
||||
### Bane og VCS
|
||||
### Sti og VCS
|
||||
|
||||
| Metode | Sti | Beskrivelse | Svar |
|
||||
| ------ | ------- | ---------------------------------- | ------------------------------------------- |
|
||||
| `GET` | `/path` | Få nuværende bane | <a href={typesUrl}><code>Path</code></a> |
|
||||
| `GET` | `/vcs` | Få VCS info for nuværende prosjekt | <a href={typesUrl}><code>VcsInfo</code></a> |
|
||||
| Metode | Sti | Beskrivelse | Svar |
|
||||
| ------ | ------- | --------------------------------- | ------------------------------------------- |
|
||||
| `GET` | `/path` | Få nuværende sti | <a href={typesUrl}><code>Path</code></a> |
|
||||
| `GET` | `/vcs` | Få VCS info for nuværende projekt | <a href={typesUrl}><code>VcsInfo</code></a> |
|
||||
|
||||
---
|
||||
|
||||
### Forekomst
|
||||
### Instans
|
||||
|
||||
| Metode | Sti | Beskrivelse | Svar |
|
||||
| ------ | ------------------- | ------------------------ | --------- |
|
||||
| `POST` | `/instance/dispose` | Kast nuværende forekomst | `boolean` |
|
||||
| `POST` | `/instance/dispose` | Kassér nuværende instans | `boolean` |
|
||||
|
||||
---
|
||||
|
||||
### Konfig
|
||||
### Konfiguration
|
||||
|
||||
| Metode | Sti | Beskrivelse | Svar |
|
||||
| ------- | ------------------- | -------------------------------------- | ---------------------------------------------------------------------------------------- |
|
||||
| `GET` | `/config` | Få konfigurasjonsinformasjon | <a href={typesUrl}><code>Config</code></a> |
|
||||
| `PATCH` | `/config` | Opdater konfigurasjon | <a href={typesUrl}><code>Config</code></a> |
|
||||
| `GET` | `/config/providers` | Liste leverandører og standardmodeller | `{ providers: `<a href={typesUrl}>Provider[]</a>`, default: { [key: string]: string } }` |
|
||||
| Metode | Sti | Beskrivelse | Svar |
|
||||
| ------- | ------------------- | ---------------------------------- | ---------------------------------------------------------------------------------------- |
|
||||
| `GET` | `/config` | Få konfigurationsinformation | <a href={typesUrl}><code>Config</code></a> |
|
||||
| `PATCH` | `/config` | Opdater konfiguration | <a href={typesUrl}><code>Config</code></a> |
|
||||
| `GET` | `/config/providers` | Liste udbydere og standardmodeller | `{ providers: `<a href={typesUrl}>Provider[]</a>`, default: { [key: string]: string } }` |
|
||||
|
||||
---
|
||||
|
||||
### Leverandør
|
||||
### Udbyder
|
||||
|
||||
| Metode | Sti | Beskrivelse | Svar |
|
||||
| ------ | -------------------------------- | ------------------------------------------ | ----------------------------------------------------------------------------------- |
|
||||
| `GET` | `/provider` | Liste alle leverandører | `{ all: `<a href={typesUrl}>Provider[]</a>`, default: {...}, connected: string[] }` |
|
||||
| `GET` | `/provider/auth` | Få leverandørautentiseringsmetoder | `{ [providerID: string]: `<a href={typesUrl}>ProviderAuthMethod[]</a>` }` |
|
||||
| `POST` | `/provider/{id}/oauth/authorize` | Autoriser en leverandør ved at bruge OAuth | <a href={typesUrl}><code>ProviderAuthAuthorization</code></a> |
|
||||
| `POST` | `/provider/{id}/oauth/callback` | Håndtere OAuth-callback for en leverandør | `boolean` |
|
||||
| Metode | Sti | Beskrivelse | Svar |
|
||||
| ------ | -------------------------------- | --------------------------------------- | ----------------------------------------------------------------------------------- |
|
||||
| `GET` | `/provider` | Liste alle udbydere | `{ all: `<a href={typesUrl}>Provider[]</a>`, default: {...}, connected: string[] }` |
|
||||
| `GET` | `/provider/auth` | Få udbydergodkendelsesmetoder | `{ [providerID: string]: `<a href={typesUrl}>ProviderAuthMethod[]</a>` }` |
|
||||
| `POST` | `/provider/{id}/oauth/authorize` | Autoriser en udbyder ved at bruge OAuth | <a href={typesUrl}><code>ProviderAuthAuthorization</code></a> |
|
||||
| `POST` | `/provider/{id}/oauth/callback` | Håndter OAuth-callback for en udbyder | `boolean` |
|
||||
|
||||
---
|
||||
|
||||
### sessioner
|
||||
### Sessioner
|
||||
|
||||
| Metode | Sti | Beskrivelse | Noter |
|
||||
| -------- | ---------------------------------------- | ------------------------------------------- | ------------------------------------------------------------------------------------- |
|
||||
| `GET` | `/session` | Liste alle sessioner | Returnerer <a href={typesUrl}><code>Session[]</code></a> |
|
||||
| `POST` | `/session` | Opret en ny session | body: `{ parentID?, title? }`, returnerer <a href={typesUrl}><code>Session</code></a> |
|
||||
| `GET` | `/session/status` | Få sessionstatus for alle sessioner | Returnerer `{ [sessionID: string]: `<a href={typesUrl}>SessionStatus</a>` }` |
|
||||
| `GET` | `/session/:id` | Få sessiondetaljer | Returnerer <a href={typesUrl}><code>Session</code></a> |
|
||||
| `DELETE` | `/session/:id` | Slett en session og alle dens data | Returnerer `boolean` |
|
||||
| `PATCH` | `/session/:id` | Opdater sessionegenskaper | body: `{ title? }`, returnerer <a href={typesUrl}><code>Session</code></a> |
|
||||
| `GET` | `/session/:id/children` | Få en sessions barnesessioner | Returnerer <a href={typesUrl}><code>Session[]</code></a> |
|
||||
| `GET` | `/session/:id/todo` | Få to-doslisten for en session | Returnerer <a href={typesUrl}><code>Todo[]</code></a> |
|
||||
| `POST` | `/session/:id/init` | Analyser appen og lag `AGENTS.md` | body: `{ messageID, providerID, modelID }`, returnerer `boolean` |
|
||||
| `POST` | `/session/:id/fork` | Fork en eksisterende session ved en melding | body: `{ messageID? }`, returnerer <a href={typesUrl}><code>Session</code></a> |
|
||||
| `POST` | `/session/:id/abort` | Avbryt en løpesession | Returnerer `boolean` |
|
||||
| `POST` | `/session/:id/share` | Del en session | Returnerer <a href={typesUrl}><code>Session</code></a> |
|
||||
| `DELETE` | `/session/:id/share` | Slutt at dele en session | Returnerer <a href={typesUrl}><code>Session</code></a> |
|
||||
| `GET` | `/session/:id/diff` | Få diff for denne sessionen | spørring: `messageID?`, returnerer <a href={typesUrl}><code>FileDiff[]</code></a> |
|
||||
| `POST` | `/session/:id/summarize` | Oppsummer sessionen | body: `{ providerID, modelID }`, returnerer `boolean` |
|
||||
| `POST` | `/session/:id/revert` | Tilbakestill en melding | body: `{ messageID, partID? }`, returnerer `boolean` |
|
||||
| `POST` | `/session/:id/unrevert` | Gjenopret alle nulstillete meldinger | Returnerer `boolean` |
|
||||
| `POST` | `/session/:id/permissions/:permissionID` | Svar på en tillatelsesforespørsel | body: `{ response, remember? }`, returnerer `boolean` |
|
||||
| Metode | Sti | Beskrivelse | Noter |
|
||||
| -------- | ---------------------------------------- | ------------------------------------------ | ------------------------------------------------------------------------------------- |
|
||||
| `GET` | `/session` | Liste alle sessioner | Returnerer <a href={typesUrl}><code>Session[]</code></a> |
|
||||
| `POST` | `/session` | Opret en ny session | body: `{ parentID?, title? }`, returnerer <a href={typesUrl}><code>Session</code></a> |
|
||||
| `GET` | `/session/status` | Få sessionstatus for alle sessioner | Returnerer `{ [sessionID: string]: `<a href={typesUrl}>SessionStatus</a>` }` |
|
||||
| `GET` | `/session/:id` | Få sessiondetaljer | Returnerer <a href={typesUrl}><code>Session</code></a> |
|
||||
| `DELETE` | `/session/:id` | Slet en session og alle dens data | Returnerer `boolean` |
|
||||
| `PATCH` | `/session/:id` | Opdater sessionegenskaber | body: `{ title? }`, returnerer <a href={typesUrl}><code>Session</code></a> |
|
||||
| `GET` | `/session/:id/children` | Få en sessions undersessioner | Returnerer <a href={typesUrl}><code>Session[]</code></a> |
|
||||
| `GET` | `/session/:id/todo` | Få to-do-listen for en session | Returnerer <a href={typesUrl}><code>Todo[]</code></a> |
|
||||
| `POST` | `/session/:id/init` | Analyser appen og lav `AGENTS.md` | body: `{ messageID, providerID, modelID }`, returnerer `boolean` |
|
||||
| `POST` | `/session/:id/fork` | Fork en eksisterende session ved en besked | body: `{ messageID? }`, returnerer <a href={typesUrl}><code>Session</code></a> |
|
||||
| `POST` | `/session/:id/abort` | Afbryd en kørende session | Returnerer `boolean` |
|
||||
| `POST` | `/session/:id/share` | Del en session | Returnerer <a href={typesUrl}><code>Session</code></a> |
|
||||
| `DELETE` | `/session/:id/share` | Stop med at dele en session | Returnerer <a href={typesUrl}><code>Session</code></a> |
|
||||
| `GET` | `/session/:id/diff` | Få diff for denne session | query: `messageID?`, returnerer <a href={typesUrl}><code>FileDiff[]</code></a> |
|
||||
| `POST` | `/session/:id/summarize` | Opsummér sessionen | body: `{ providerID, modelID }`, returnerer `boolean` |
|
||||
| `POST` | `/session/:id/revert` | Tilbagestil en besked | body: `{ messageID, partID? }`, returnerer `boolean` |
|
||||
| `POST` | `/session/:id/unrevert` | Gendan alle nulstillede beskeder | Returnerer `boolean` |
|
||||
| `POST` | `/session/:id/permissions/:permissionID` | Svar på en tilladelsesforespørgsel | body: `{ response, remember? }`, returnerer `boolean` |
|
||||
|
||||
---
|
||||
|
||||
### Meldinger
|
||||
### Beskeder
|
||||
|
||||
| Metode | Sti | Beskrivelse | Noter |
|
||||
| ------ | --------------------------------- | -------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
||||
| `GET` | `/session/:id/message` | Liste meldinger i en session | spørring: `limit?`, returnerer `{ info: `<a href={typesUrl}>Message</a>`, parts: `<a href={typesUrl}>Part[]</a>`}[]` |
|
||||
| `POST` | `/session/:id/message` | Send en melding og vent på svar | body: `{ messageID?, model?, agent?, noReply?, system?, tools?, parts }`, returnerer `{ info: `<a href={typesUrl}>Message</a>`, parts: `<a href={typesUrl}>Part[]</a>`}` |
|
||||
| `GET` | `/session/:id/message/:messageID` | Få meldingsdetaljer | Returnerer `{ info: `<a href={typesUrl}>Message</a>`, parts: `<a href={typesUrl}>Part[]</a>`}` |
|
||||
| `POST` | `/session/:id/prompt_async` | Send en melding asynkront (ingen vent) | body: samme som `/session/:id/message`, returnerer `204 No Content` |
|
||||
| `POST` | `/session/:id/command` | Utfør en skråstrek-kommando | body: `{ messageID?, agent?, model?, command, arguments }`, returnerer `{ info: `<a href={typesUrl}>Message</a>`, parts: `<a href={typesUrl}>Part[]</a>`}` |
|
||||
| `POST` | `/session/:id/shell` | Kjør en shell-kommando | body: `{ agent, model?, command }`, returnerer `{ info: `<a href={typesUrl}>Message</a>`, parts: `<a href={typesUrl}>Part[]</a>`}` |
|
||||
| Metode | Sti | Beskrivelse | Noter |
|
||||
| ------ | --------------------------------- | ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
||||
| `GET` | `/session/:id/message` | Liste beskeder i en session | query: `limit?`, returnerer `{ info: `<a href={typesUrl}>Message</a>`, parts: `<a href={typesUrl}>Part[]</a>`}[]` |
|
||||
| `POST` | `/session/:id/message` | Send en besked og vent på svar | body: `{ messageID?, model?, agent?, noReply?, system?, tools?, parts }`, returnerer `{ info: `<a href={typesUrl}>Message</a>`, parts: `<a href={typesUrl}>Part[]</a>`}` |
|
||||
| `GET` | `/session/:id/message/:messageID` | Få beskeddetaljer | Returnerer `{ info: `<a href={typesUrl}>Message</a>`, parts: `<a href={typesUrl}>Part[]</a>`}` |
|
||||
| `POST` | `/session/:id/prompt_async` | Send en besked asynkront (ingen vent) | body: samme som `/session/:id/message`, returnerer `204 No Content` |
|
||||
| `POST` | `/session/:id/command` | Udfør en skråstregskommando | body: `{ messageID?, agent?, model?, command, arguments }`, returnerer `{ info: `<a href={typesUrl}>Message</a>`, parts: `<a href={typesUrl}>Part[]</a>`}` |
|
||||
| `POST` | `/session/:id/shell` | Kør en shell-kommando | body: `{ agent, model?, command }`, returnerer `{ info: `<a href={typesUrl}>Message</a>`, parts: `<a href={typesUrl}>Part[]</a>`}` |
|
||||
|
||||
---
|
||||
|
||||
### Kommandoer
|
||||
|
||||
| Metode | Sti | Beskrivelse | Svar |
|
||||
| ------ | ---------- | --------------------- | ---------------------------------------------- |
|
||||
| `GET` | `/command` | Liste alle kommandoer | <a href={typesUrl}><code>Kommando[]</code></a> |
|
||||
| Metode | Sti | Beskrivelse | Svar |
|
||||
| ------ | ---------- | --------------------- | --------------------------------------------- |
|
||||
| `GET` | `/command` | Liste alle kommandoer | <a href={typesUrl}><code>Command[]</code></a> |
|
||||
|
||||
---
|
||||
|
||||
### Filer
|
||||
|
||||
| Metode | Sti | Beskrivelse | Svar |
|
||||
| ------ | ------------------------ | ---------------------------------- | ------------------------------------------------------------------------------------------ |
|
||||
| `GET` | `/find?pattern=<pat>` | Søk etter tekst i filer | En rekke matchobjekter med `path`, `lines`, `line_number`, `absolute_offset`, `submatches` |
|
||||
| `GET` | `/find/file?query=<q>` | Finn filer og kataloger etter navn | `string[]` (baner) |
|
||||
| `GET` | `/find/symbol?query=<q>` | Finn arbeidsområdesymboler | <a href={typesUrl}><code>Symbol[]</code></a> |
|
||||
| `GET` | `/file?path=<path>` | Liste filer og kataloger | <a href={typesUrl}><code>FilNode[]</code></a> |
|
||||
| `GET` | `/file/content?path=<p>` | Les en fil | <a href={typesUrl}><code>Filinnhold</code></a> |
|
||||
| `GET` | `/file/status` | Få status for sporede filer | <a href={typesUrl}><code>Fil[]</code></a> |
|
||||
| Metode | Sti | Beskrivelse | Svar |
|
||||
| ------ | ------------------------ | ------------------------------- | ------------------------------------------------------------------------------------------ |
|
||||
| `GET` | `/find?pattern=<pat>` | Søg efter tekst i filer | En række matchobjekter med `path`, `lines`, `line_number`, `absolute_offset`, `submatches` |
|
||||
| `GET` | `/find/file?query=<q>` | Find filer og mapper efter navn | `string[]` (stier) |
|
||||
| `GET` | `/find/symbol?query=<q>` | Find arbejdsområdesymboler | <a href={typesUrl}><code>Symbol[]</code></a> |
|
||||
| `GET` | `/file?path=<path>` | Liste filer og mapper | <a href={typesUrl}><code>FileNode[]</code></a> |
|
||||
| `GET` | `/file/content?path=<p>` | Læs en fil | <a href={typesUrl}><code>FileContent</code></a> |
|
||||
| `GET` | `/file/status` | Få status for sporede filer | <a href={typesUrl}><code>File[]</code></a> |
|
||||
|
||||
#### `/find/file` spørringsparametere
|
||||
#### /find/file forespørgselsparametre
|
||||
|
||||
- `query` (obligatorisk) - søkestreng (uklar samsvar)
|
||||
- `type` (valgfritt) - begrense resultatene til `"file"` eller `"directory"`
|
||||
- `directory` (valgfritt) — overstyr prosjektroten for søket
|
||||
- `limit` (valgfritt) - maks. resultater (1–200)
|
||||
- `dirs` (valgfritt) - eldre flagg (`"false"` returnerer kun filer)
|
||||
- `query` (obligatorisk) - søgestreng (fuzzy match)
|
||||
- `type` (valgfrit) - begræns resultaterne til `"file"` eller `"directory"`
|
||||
- `directory` (valgfrit) — overstyr projektroden for søget
|
||||
- `limit` (valgfrit) - maks. resultater (1–200)
|
||||
- `dirs` (valgfrit) - ældre flag (`"false"` returnerer kun filer)
|
||||
|
||||
---
|
||||
|
||||
### Verktøy (eksperimentelt)
|
||||
### Værktøjer (eksperimentelt)
|
||||
|
||||
| Metode | Sti | Beskrivelse | Svar |
|
||||
| ------ | ------------------------------------------- | -------------------------------------------- | -------------------------------------------- |
|
||||
| `GET` | `/experimental/tool/ids` | Vis alle verktøy-ID-er | <a href={typesUrl}><code>ToolIDs</code></a> |
|
||||
| `GET` | `/experimental/tool?provider=<p>&model=<m>` | List verktøy med JSON-skjemaer for en modell | <a href={typesUrl}><code>ToolList</code></a> |
|
||||
| Metode | Sti | Beskrivelse | Svar |
|
||||
| ------ | ------------------------------------------- | --------------------------------------------- | -------------------------------------------- |
|
||||
| `GET` | `/experimental/tool/ids` | Vis alle værktøjs-ID'er | <a href={typesUrl}><code>ToolIDs</code></a> |
|
||||
| `GET` | `/experimental/tool?provider=<p>&model=<m>` | Liste værktøjer med JSON-skemaer for en model | <a href={typesUrl}><code>ToolList</code></a> |
|
||||
|
||||
---
|
||||
|
||||
### LSP, formattere og MCP
|
||||
|
||||
| Metode | Sti | Beskrivelse | Svar |
|
||||
| ------ | ------------ | ---------------------------- | -------------------------------------------------------- |
|
||||
| `GET` | `/lsp` | Få LSP serverstatus | <a href={typesUrl}><code>LSPStatus[]</code></a> |
|
||||
| `GET` | `/formatter` | Få formateringsstatus | <a href={typesUrl}><code>FormatterStatus[]</code></a> |
|
||||
| `GET` | `/mcp` | Få MCP serverstatus | `{ [name: string]: `<a href={typesUrl}>MCPStatus</a>` }` |
|
||||
| `POST` | `/mcp` | Legg til MCP server dynamisk | body: `{ name, config }`, returnerer MCP statusobjekt |
|
||||
| Metode | Sti | Beskrivelse | Svar |
|
||||
| ------ | ------------ | -------------------------- | -------------------------------------------------------- |
|
||||
| `GET` | `/lsp` | Få LSP serverstatus | <a href={typesUrl}><code>LSPStatus[]</code></a> |
|
||||
| `GET` | `/formatter` | Få formateringsstatus | <a href={typesUrl}><code>FormatterStatus[]</code></a> |
|
||||
| `GET` | `/mcp` | Få MCP serverstatus | `{ [name: string]: `<a href={typesUrl}>MCPStatus</a>` }` |
|
||||
| `POST` | `/mcp` | Tilføj MCP server dynamisk | body: `{ name, config }`, returnerer MCP statusobjekt |
|
||||
|
||||
---
|
||||
|
||||
@@ -238,11 +238,11 @@ OpenCode-serveren viser følgende APIer.
|
||||
|
||||
---
|
||||
|
||||
### Logging
|
||||
### Logning
|
||||
|
||||
| Metode | Sti | Beskrivelse | Svar |
|
||||
| ------ | ------ | --------------------------------------------------------------------- | --------- |
|
||||
| `POST` | `/log` | Skriv loggoppføring. Brødtekst: `{ service, level, message, extra? }` | `boolean` |
|
||||
| Metode | Sti | Beskrivelse | Svar |
|
||||
| ------ | ------ | ---------------------------------------------------------- | --------- |
|
||||
| `POST` | `/log` | Skriv logpost. Body: `{ service, level, message, extra? }` | `boolean` |
|
||||
|
||||
---
|
||||
|
||||
@@ -250,38 +250,38 @@ OpenCode-serveren viser følgende APIer.
|
||||
|
||||
| Metode | Sti | Beskrivelse | Svar |
|
||||
| ------ | ----------------------- | ------------------------------------------- | -------------------------- |
|
||||
| `POST` | `/tui/append-prompt` | Legg til tekst i ledeteksten | `boolean` |
|
||||
| `POST` | `/tui/open-help` | Åpne hjelpedialogen | `boolean` |
|
||||
| `POST` | `/tui/open-sessions` | Åpne sessionvelgeren | `boolean` |
|
||||
| `POST` | `/tui/open-themes` | Åpne temavelgeren | `boolean` |
|
||||
| `POST` | `/tui/open-models` | Åpne modellvelgeren | `boolean` |
|
||||
| `POST` | `/tui/submit-prompt` | Send inn nuværende ledetekst | `boolean` |
|
||||
| `POST` | `/tui/clear-prompt` | Fjern ledeteksten | `boolean` |
|
||||
| `POST` | `/tui/execute-command` | Utfør en kommando (`{ command }`) | `boolean` |
|
||||
| `POST` | `/tui/append-prompt` | Tilføj tekst til prompten | `boolean` |
|
||||
| `POST` | `/tui/open-help` | Åbn hjælp-dialogen | `boolean` |
|
||||
| `POST` | `/tui/open-sessions` | Åbn sessionsvælgeren | `boolean` |
|
||||
| `POST` | `/tui/open-themes` | Åbn temavælgeren | `boolean` |
|
||||
| `POST` | `/tui/open-models` | Åbn modelvælgeren | `boolean` |
|
||||
| `POST` | `/tui/submit-prompt` | Indsend nuværende prompt | `boolean` |
|
||||
| `POST` | `/tui/clear-prompt` | Ryd prompten | `boolean` |
|
||||
| `POST` | `/tui/execute-command` | Udfør en kommando (`{ command }`) | `boolean` |
|
||||
| `POST` | `/tui/show-toast` | Vis toast (`{ title?, message, variant }`) | `boolean` |
|
||||
| `GET` | `/tui/control/next` | Vent på neste kontrollforespørsel | Kontrollforespørselsobjekt |
|
||||
| `POST` | `/tui/control/response` | Svar på en kontrollforespørsel (`{ body }`) | `boolean` |
|
||||
| `GET` | `/tui/control/next` | Vent på næste kontrolforespørgsel | Kontrolforespørgselsobjekt |
|
||||
| `POST` | `/tui/control/response` | Svar på en kontrolforespørgsel (`{ body }`) | `boolean` |
|
||||
|
||||
---
|
||||
|
||||
### Auth
|
||||
### Godkendelse
|
||||
|
||||
| Metode | Sti | Beskrivelse | Svar |
|
||||
| ------ | ----------- | --------------------------------------------------------------------------- | --------- |
|
||||
| `PUT` | `/auth/:id` | Angi autentiseringslegitimasjon. Brødtekst må samsvare med leverandørskjema | `boolean` |
|
||||
| Metode | Sti | Beskrivelse | Svar |
|
||||
| ------ | ----------- | ------------------------------------------------------------ | --------- |
|
||||
| `PUT` | `/auth/:id` | Angiv godkendelsesoplysninger. Body skal matche udbyderskema | `boolean` |
|
||||
|
||||
---
|
||||
|
||||
### Hendelser
|
||||
### Hændelser
|
||||
|
||||
| Metode | Sti | Beskrivelse | Svar |
|
||||
| ------ | -------- | -------------------------------------------------------------------------------------------------- | ------------------------------ |
|
||||
| `GET` | `/event` | Server-sendte hendelsesstrøm. Første arrangement er `server.connected`, deretter bussarrangementer | Server-sendte hendelser stream |
|
||||
| Metode | Sti | Beskrivelse | Svar |
|
||||
| ------ | -------- | ----------------------------------------------------------------------------------------- | --------------------------- |
|
||||
| `GET` | `/event` | Server-sendt hændelsesstrøm. Første hændelse er `server.connected`, derefter bushændelser | Server-sendt hændelsesstrøm |
|
||||
|
||||
---
|
||||
|
||||
### Dokumenter
|
||||
### Dokumentation
|
||||
|
||||
| Metode | Sti | Beskrivelse | Svar |
|
||||
| ------ | ------ | ------------------------- | ----------------------------------- |
|
||||
| `GET` | `/doc` | OpenAPI 3.1-spesifikasjon | HTML side med OpenAPI-spesifikasjon |
|
||||
| `GET` | `/doc` | OpenAPI 3.1-specifikation | HTML side med OpenAPI-specifikation |
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
title: Dele
|
||||
title: Deling
|
||||
description: Del dine OpenCode-samtaler.
|
||||
---
|
||||
|
||||
@@ -11,7 +11,7 @@ Delte samtaler er offentlig tilgængelige for alle med linken.
|
||||
|
||||
---
|
||||
|
||||
## Slik fungerer det
|
||||
## Sådan fungerer det
|
||||
|
||||
Når du deler en samtale, OpenCode:
|
||||
|
||||
@@ -21,13 +21,13 @@ Når du deler en samtale, OpenCode:
|
||||
|
||||
---
|
||||
|
||||
## Deling
|
||||
## Tilstande
|
||||
|
||||
OpenCode støtter tre delingsmoduser som kontrollerer hvordan samtaler deles:
|
||||
|
||||
---
|
||||
|
||||
### Manuell (standard)
|
||||
### Manuel (standard)
|
||||
|
||||
Som standard bruger OpenCode manuell delingsmodus. Sessioner deles ikke automatisk, men du kan dele dem manuelt ved at bruge kommandoen `/share`:
|
||||
|
||||
@@ -63,7 +63,7 @@ Med automatisk deling aktivert, vil hver nye samtale automatisk bli delt og en k
|
||||
|
||||
---
|
||||
|
||||
### Deaktivert
|
||||
### Deaktiveret
|
||||
|
||||
Du kan deaktivere deling helt ved at sette alternativet `share` til `"disabled"` i [konfigurasjonsfilen](/docs/config):
|
||||
|
||||
@@ -78,7 +78,7 @@ For at håndheve dette på tvers av teamet ditt for et gitt prosjekt, tilføj de
|
||||
|
||||
---
|
||||
|
||||
## Opphev deling
|
||||
## Ophæv deling
|
||||
|
||||
Slik slutter du at dele en samtale og fjerner den fra offentlig tilgang:
|
||||
|
||||
@@ -90,7 +90,7 @@ Dette vil fjerne delelinken og slette dataene knyttet til samtalen.
|
||||
|
||||
---
|
||||
|
||||
## Personvern
|
||||
## Privatliv
|
||||
|
||||
Det er et par ting du må huske på når du deler en samtale.
|
||||
|
||||
@@ -117,7 +117,7 @@ inkluderer:
|
||||
|
||||
---
|
||||
|
||||
## For bedrifter
|
||||
## For virksomheder
|
||||
|
||||
For bedriftsimplementeringer kan delingsfunksjonen være:
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
title: "Agentferdigheter"
|
||||
title: "Agentfærdigheder"
|
||||
description: "Definer gjenbrugbar atferd via SKILL.md-definisjoner"
|
||||
---
|
||||
|
||||
@@ -8,7 +8,7 @@ Ferdigheter lastes inn på forespørsel via det opprinnelige `skill`-verktøyet
|
||||
|
||||
---
|
||||
|
||||
## Plasser filer
|
||||
## Placer filer
|
||||
|
||||
Opret én mappe per ferdighetsnavn og tilføj inn en `SKILL.md` i den.
|
||||
OpenCode søker etter disse stedene:
|
||||
@@ -22,7 +22,7 @@ OpenCode søker etter disse stedene:
|
||||
|
||||
---
|
||||
|
||||
## Forstå oppdagelsen
|
||||
## Forstå opdagelsen
|
||||
|
||||
For prosjektlokale stier går OpenCode opp fra din nåværende arbejdskatalog til den når git-arbeidstreet.
|
||||
Den laster alle matchende `skills/*/SKILL.md` i `.opencode/` og alle matchende `.claude/skills/*/SKILL.md` eller `.agents/skills/*/SKILL.md` underveis.
|
||||
@@ -31,7 +31,7 @@ Globale definisjoner lastes også inn fra `~/.config/opencode/skills/*/SKILL.md`
|
||||
|
||||
---
|
||||
|
||||
## Skriv frontmaterie
|
||||
## Skriv frontmatter
|
||||
|
||||
Hver `SKILL.md` må starte med YAML frontmatter.
|
||||
Bare disse feltene gjenkjennes:
|
||||
@@ -46,7 +46,7 @@ Ukjente frontmatter-felter ignoreres.
|
||||
|
||||
---
|
||||
|
||||
## Bekreft navn
|
||||
## Bekræft navn
|
||||
|
||||
`name` må:
|
||||
|
||||
@@ -64,7 +64,7 @@ Ekvivalent regulært uttrykk:
|
||||
|
||||
---
|
||||
|
||||
## Følg lengdereglene
|
||||
## Følg længdereglerne
|
||||
|
||||
`description` må bestå av 1-1024 tegn.
|
||||
Hold det spesifikt nok til at agenten kan velge riktig.
|
||||
@@ -100,7 +100,7 @@ Ask clarifying questions if the target versioning scheme is unclear.
|
||||
|
||||
---
|
||||
|
||||
## Gjenkjenne verktøybeskrivelsen
|
||||
## Genkend værktøjsbeskrivelsen
|
||||
|
||||
OpenCode viser tilgængelige ferdigheter i `skill` verktøybeskrivelsen.
|
||||
Hver oppføring inneholder ferdighetsnavnet og beskrivelsen:
|
||||
@@ -122,7 +122,7 @@ skill({ name: "git-release" })
|
||||
|
||||
---
|
||||
|
||||
## Konfigurer tillatelser
|
||||
## Konfigurer tilladelser
|
||||
|
||||
Kontroller hvilke ferdigheter agenter har tilgang til ved at bruge mønsterbaserte tillatelser i `opencode.json`:
|
||||
|
||||
@@ -149,7 +149,7 @@ Mønstre støtter jokertegn: `internal-*` samsvarer med `internal-docs`, `intern
|
||||
|
||||
---
|
||||
|
||||
## Overstyring per agent
|
||||
## Tilsidesættelse pr. agent
|
||||
|
||||
Gi spesifikke agenter andre tillatelser enn de globale standardinnstillingene.
|
||||
|
||||
@@ -181,7 +181,7 @@ permission:
|
||||
|
||||
---
|
||||
|
||||
## Deaktiver ferdighetsverktøyet
|
||||
## Deaktiver færdighedsværktøjet
|
||||
|
||||
Deaktiver ferdigheter fullstendig for agenter som ikke bør bruge dem:
|
||||
|
||||
@@ -212,7 +212,7 @@ Når den er deaktivert, blir `<available_skills>`-delen utelatt helt.
|
||||
|
||||
---
|
||||
|
||||
## Feilsøk lasting
|
||||
## Fejlfind indlæsning
|
||||
|
||||
Hvis en ferdighet ikke vises:
|
||||
|
||||
|
||||
@@ -21,7 +21,7 @@ Uden truecolor-støtte kan temaer vises med redusert farvenøjagtighed eller fal
|
||||
|
||||
---
|
||||
|
||||
## Innebygde temaer
|
||||
## Indbyggede temaer
|
||||
|
||||
OpenCode kommer med flere innebygde temaer.
|
||||
|
||||
@@ -59,7 +59,7 @@ Systemtemaet er for brugere som:
|
||||
|
||||
---
|
||||
|
||||
## Bruge et tema
|
||||
## Brug et tema
|
||||
|
||||
Du kan velge et tema ved at hente frem temavalg med kommandoen `/theme`. Eller du kan spesifisere det i [config](/docs/config).
|
||||
|
||||
@@ -72,7 +72,7 @@ Du kan velge et tema ved at hente frem temavalg med kommandoen `/theme`. Eller d
|
||||
|
||||
---
|
||||
|
||||
## Egendefinerte temaer
|
||||
## Brugerdefinerede temaer
|
||||
|
||||
OpenCode støtter et fleksibelt JSON-basert temasystem som lar brugere enkelt lage og tilpasse temaer.
|
||||
|
||||
@@ -91,7 +91,7 @@ Hvis flere kataloger inneholder et tema med samme navn, vil temaet fra katalogen
|
||||
|
||||
---
|
||||
|
||||
### Oprete et tema
|
||||
### Oprettelse af et tema
|
||||
|
||||
For at lage et brugerdefineret tema, lag en JSON-fil i en av temakatalogene.
|
||||
|
||||
@@ -111,7 +111,7 @@ vim .opencode/themes/my-theme.json
|
||||
|
||||
---
|
||||
|
||||
### JSON format
|
||||
### JSON-format
|
||||
|
||||
Temaer bruger et fleksibelt JSON-format med støtte for:
|
||||
|
||||
@@ -123,7 +123,7 @@ Temaer bruger et fleksibelt JSON-format med støtte for:
|
||||
|
||||
---
|
||||
|
||||
### Farvedefinisjoner
|
||||
### Farvedefinitioner
|
||||
|
||||
`defs`-delen er valgfri, og den lar deg definere gjenbrugbare farver som kan refereres til i temaet.
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: Verktøy
|
||||
description: Administrer verktøyene en LLM kan bruge.
|
||||
title: Værktøjer
|
||||
description: Administrer de værktøjer, en LLM kan bruge.
|
||||
---
|
||||
|
||||
Verktøy lar LLM utføre handlinger i kodebasen din. OpenCode kommer med et sett med innebygde verktøy, men du kan utvide det med [egendefinerte verktøy](/docs/custom-tools) eller [MCP servere](/docs/mcp-servers).
|
||||
@@ -9,7 +9,7 @@ Som standard er alle verktøy **aktivert** og trenger ikke tillatelse for at kj
|
||||
|
||||
---
|
||||
|
||||
## Konfigurer
|
||||
## Konfiguration
|
||||
|
||||
Brug feltet `permission` for at kontrollere verktøyets oppførsel. Du kan tillate, avslå eller kreve godkjenning for hvert verktøy.
|
||||
|
||||
@@ -39,7 +39,7 @@ Du kan også bruge jokertegn for at kontrollere flere verktøy samtidig. For eks
|
||||
|
||||
---
|
||||
|
||||
## Innebygd
|
||||
## Indbyggede
|
||||
|
||||
Her er alle de innebygde verktøyene som er tilgængelige i OpenCode.
|
||||
|
||||
@@ -344,7 +344,7 @@ Hvert spørsmål inkluderer en overskrift, spørsmålsteksten og en liste over a
|
||||
|
||||
---
|
||||
|
||||
## Egendefinerte verktøy
|
||||
## Brugerdefinerede værktøjer
|
||||
|
||||
Egendefinerte verktøy lar deg definere dine egne funksjoner som LLM kan kalle. Disse er definert i konfigurasjonsfilen din og kan kjøre vilkårlig kode.
|
||||
|
||||
@@ -352,7 +352,7 @@ Egendefinerte verktøy lar deg definere dine egne funksjoner som LLM kan kalle.
|
||||
|
||||
---
|
||||
|
||||
## MCP servere
|
||||
## MCP-servere
|
||||
|
||||
MCP (Model Context Protocol) servere lar deg integrere eksterne verktøy og tjenester. Dette inkluderer databasetilgang, API-integrasjoner og tredjepartstjenester.
|
||||
|
||||
@@ -360,13 +360,13 @@ MCP (Model Context Protocol) servere lar deg integrere eksterne verktøy og tjen
|
||||
|
||||
---
|
||||
|
||||
## Internaler
|
||||
## Interne
|
||||
|
||||
Internt bruger verktøy som `grep`, `glob` og `list` [ripgrep](https://github.com/BurntSushi/ripgrep) under panseret. Som standard respekterer ripgrep `.gitignore`-mønstre, noe som betyr at filer og kataloger som er oppført i `.gitignore` vil bli ekskludert fra søk og lister.
|
||||
|
||||
---
|
||||
|
||||
### Ignore patterns
|
||||
### Ignoreringsmønstre
|
||||
|
||||
For at inkludere filer som normalt vil bli ignorert, lag en `.ignore`-fil i prosjektroten. Denne filen kan eksplisitt tillate visse stier.
|
||||
|
||||
|
||||
@@ -1,67 +1,67 @@
|
||||
---
|
||||
title: Feilsøking
|
||||
description: Vanlige problemer og hvordan de kan løses.
|
||||
title: Fejlfinding
|
||||
description: Almindelige problemer, og hvordan de løses.
|
||||
---
|
||||
|
||||
For at feilsøke problemer med OpenCode, start med at tjeke loggene og lokale data den lagrer på disken.
|
||||
For at fejlfinde problemer med OpenCode, start med at tjekke logfilerne og de lokale data, den gemmer på disken.
|
||||
|
||||
---
|
||||
|
||||
## Logger
|
||||
## Logfiler
|
||||
|
||||
Loggfiler skrives til:
|
||||
Logfiler skrives til:
|
||||
|
||||
- **macOS/Linux**: `~/.local/share/opencode/log/`
|
||||
- **Windows**: Trykk `WIN+R` og lim inn `%USERPROFILE%\.local\share\opencode\log`
|
||||
- **Windows**: Tryk `WIN+R` og indsæt `%USERPROFILE%\.local\share\opencode\log`
|
||||
|
||||
Loggfiler navngis med tidsstempler (f.eks. `2025-01-09T123456.log`) og de siste 10 loggfilene beholdes.
|
||||
Logfiler navngives med tidsstempler (f.eks. `2025-01-09T123456.log`) og de sidste 10 logfiler beholdes.
|
||||
|
||||
Du kan angi loggnivået med kommandolinjealternativet `--log-level` for at få mer detaljert feilsøkingsinformasjon. For eksempel `opencode --log-level DEBUG`.
|
||||
Du kan angive logniveauet med kommandolinjeflaget `--log-level` for at få mere detaljeret fejlfindingsinformation. For eksempel `opencode --log-level DEBUG`.
|
||||
|
||||
---
|
||||
|
||||
## Lagring
|
||||
|
||||
opencode lagrer sessiondata og andre applikasjonsdata på disken på:
|
||||
opencode gemmer sessionsdata og andre applikationsdata på disken på:
|
||||
|
||||
- **macOS/Linux**: `~/.local/share/opencode/`
|
||||
- **Windows**: Trykk `WIN+R` og lim inn `%USERPROFILE%\.local\share\opencode`
|
||||
- **Windows**: Tryk `WIN+R` og indsæt `%USERPROFILE%\.local\share\opencode`
|
||||
|
||||
Denne katalogen inneholder:
|
||||
Denne mappe indeholder:
|
||||
|
||||
- `auth.json` - Autentiseringsdata som API-nøkler, OAuth-tokens
|
||||
- `log/` - Applikasjonslogger
|
||||
- `project/` - Prosjektspesifikke data som session- og meldingsdata
|
||||
- Hvis prosjektet er innenfor en Git-repo, lagres det i `./<project-slug>/storage/`
|
||||
- Hvis det ikke er en Git-repo, lagres det i `./global/storage/`
|
||||
- `auth.json` - Godkendelsesdata som API-nøgler, OAuth-tokens
|
||||
- `log/` - Applikationslogs
|
||||
- `project/` - Projektspecifikke data som sessions- og beskeddata
|
||||
- Hvis projektet er inden for et Git-repo, gemmes det i `./<project-slug>/storage/`
|
||||
- Hvis det ikke er et Git-repo, gemmes det i `./global/storage/`
|
||||
|
||||
---
|
||||
|
||||
## Desktop-app
|
||||
|
||||
OpenCode Desktop kjører en lokal OpenCode-server (`opencode-cli` sidevognen) i bakgrunnen. De fleste problemene er forårsaket av en plugin som fungerer dårlig, en ødelagt cache eller en dårlig serverinnstilling.
|
||||
OpenCode Desktop kører en lokal OpenCode-server (`opencode-cli` sidevognen) i baggrunden. De fleste problemer er forårsaget af et plugin, der fungerer dårligt, en ødelagt cache eller en dårlig serverindstilling.
|
||||
|
||||
### Raske tjeker
|
||||
### Hurtige tjek
|
||||
|
||||
- Avslutt og start appen på nytt.
|
||||
- Hvis appen viser en feilskjerm, klikker du på **Start på nytt** og kopierer feildetaljene.
|
||||
- Bare macOS: `OpenCode`-meny -> **Last nettvisning på nytt** (hjelper hvis UI er tom/frosset).
|
||||
- Afslut og start appen på ny.
|
||||
- Hvis appen viser en fejlskærm, klikker du på **Start på ny** og kopierer fejldetaljerne.
|
||||
- Kun macOS: `OpenCode`-menu -> **Genindlæs webvisning** (hjælper hvis UI er tom/frosset).
|
||||
|
||||
---
|
||||
|
||||
### Deaktiver plugins
|
||||
|
||||
Hvis skrivebordsappen krasjer ved oppstart, henger eller oppfører seg merkelig, start med at deaktivere plugins.
|
||||
Hvis skrivebordsappen går ned ved opstart, hænger eller opfører sig mærkeligt, start med at deaktivere plugins.
|
||||
|
||||
#### Tjek den globale konfigurasjonen
|
||||
#### Tjek den globale konfiguration
|
||||
|
||||
Åpne den globale konfigurasjonsfilen og se etter en `plugin`-nøkkel.
|
||||
Åbn den globale konfigurationsfil og se efter en `plugin`-nøgle.
|
||||
|
||||
- **macOS/Linux**: `~/.config/opencode/opencode.jsonc` (eller `~/.config/opencode/opencode.json`)
|
||||
- **macOS/Linux** (eldre installasjoner): `~/.local/share/opencode/opencode.jsonc`
|
||||
- **Windows**: Trykk `WIN+R` og lim inn `%USERPROFILE%\.config\opencode\opencode.jsonc`
|
||||
- **macOS/Linux** (ældre installationer): `~/.local/share/opencode/opencode.jsonc`
|
||||
- **Windows**: Tryk `WIN+R` og indsæt `%USERPROFILE%\.config\opencode\opencode.jsonc`
|
||||
|
||||
Hvis du har konfigurert plugins, deaktiver dem midlertidig ved at fjerne nøkkelen eller sette den til en tom matrise:
|
||||
Hvis du har konfigureret plugins, deaktiver dem midlertidigt ved at fjerne nøglen eller sætte den til et tomt array:
|
||||
|
||||
```jsonc
|
||||
{
|
||||
@@ -70,156 +70,156 @@ Hvis du har konfigurert plugins, deaktiver dem midlertidig ved at fjerne nøkkel
|
||||
}
|
||||
```
|
||||
|
||||
#### Tjek plugin-kataloger
|
||||
#### Tjek plugin-mapper
|
||||
|
||||
OpenCode kan også laste lokale plugins fra disken. Flytt disse midlertidig ut av veien (eller gi nytt navn til mappen) og start skrivebordsappen på nytt:
|
||||
OpenCode kan også indlæse lokale plugins fra disken. Flyt disse midlertidigt væk (eller giv mappen nyt navn) og start skrivebordsappen på ny:
|
||||
|
||||
- **Globale plugins**
|
||||
- **macOS/Linux**: `~/.config/opencode/plugins/`
|
||||
- **Windows**: Trykk `WIN+R` og lim inn `%USERPROFILE%\.config\opencode\plugins`
|
||||
- **Prosjektplugins** (bare hvis du bruger konfigurasjon per prosjekt)
|
||||
- **Windows**: Tryk `WIN+R` og indsæt `%USERPROFILE%\.config\opencode\plugins`
|
||||
- **Projektplugins** (kun hvis du bruger konfiguration per projekt)
|
||||
- `<your-project>/.opencode/plugins/`
|
||||
|
||||
Hvis appen begynner at fungere igjen, aktiverer du plugins én om gangen for at finne ut hvilken som forårsaker problemet.
|
||||
Hvis appen begynder at fungere igen, aktiverer du plugins én ad gangen for at finde ud af, hvilken som forårsager problemet.
|
||||
|
||||
---
|
||||
|
||||
### Tøm hurtigbufferen
|
||||
### Ryd cachen
|
||||
|
||||
Hvis deaktivering av plugins ikke hjelper (eller en plugin-installasjon sitter fast), tøm hurtigbufferen slik at OpenCode kan gjenoppbygge den.
|
||||
Hvis deaktivering af plugins ikke hjælper (eller en plugin-installation sidder fast), tøm cachen så OpenCode kan genopbygge den.
|
||||
|
||||
1. Avslutt OpenCode Desktop helt.
|
||||
2. Slett hurtigbufferkatalogen:
|
||||
1. Afslut OpenCode Desktop helt.
|
||||
2. Slet cache-mappen:
|
||||
|
||||
- **macOS**: Finder -> `Cmd+Shift+G` -> lim inn `~/.cache/opencode`
|
||||
- **Linux**: slett `~/.cache/opencode` (eller kjør `rm -rf ~/.cache/opencode`)
|
||||
- **Windows**: Trykk `WIN+R` og lim inn `%USERPROFILE%\.cache\opencode`
|
||||
- **macOS**: Finder -> `Cmd+Shift+G` -> indsæt `~/.cache/opencode`
|
||||
- **Linux**: slet `~/.cache/opencode` (eller kør `rm -rf ~/.cache/opencode`)
|
||||
- **Windows**: Tryk `WIN+R` og indsæt `%USERPROFILE%\.cache\opencode`
|
||||
|
||||
3. Start OpenCode Desktop på nytt.
|
||||
3. Start OpenCode Desktop på ny.
|
||||
|
||||
---
|
||||
|
||||
### Løs problemer med servertilkobling
|
||||
### Løs problemer med serverforbindelse
|
||||
|
||||
OpenCode Desktop kan enten starte sin egen lokale server (standard) eller koble til en server URL du har konfigurert.
|
||||
OpenCode Desktop kan enten starte sin egen lokale server (standard) eller forbinde til en server URL, du har konfigureret.
|
||||
|
||||
Hvis du ser en **"Tilkobling mislyktes"**-dialogboks (eller appen kommer aldri forbi splash-skjermen), se etter en brugerdefineret server URL.
|
||||
Hvis du ser en **"Forbindelse mislykkedes"**-dialogboks (eller appen kommer aldrig forbi splash-skærmen), se efter en brugerdefineret server URL.
|
||||
|
||||
#### Slett standardserveren for skrivebordet URL
|
||||
#### Slet standardserveren for skrivebordet URL
|
||||
|
||||
Fra startskjermen klikker du på servernavnet (med statusprikken) for at åpne servervelgeren. I delen **Standardserver** klikker du på **Slett**.
|
||||
Fra startskærmen klikker du på servernavnet (med statusprikken) for at åbne servervælgeren. I delen **Standardserver** klikker du på **Slet**.
|
||||
|
||||
#### Fjern `server.port` / `server.hostname` fra konfigurasjonen din
|
||||
#### Fjern `server.port` / `server.hostname` fra din konfiguration
|
||||
|
||||
Hvis `opencode.json(c)` inneholder en `server`-del, fjern den midlertidig og start skrivebordsappen på nytt.
|
||||
Hvis `opencode.json(c)` indeholder en `server`-del, fjern den midlertidigt og start skrivebordsappen på ny.
|
||||
|
||||
#### Tjek miljøvariabler
|
||||
|
||||
Hvis du har `OPENCODE_PORT` satt i miljøet ditt, vil skrivebordsappen prøve at bruge den porten for den lokale serveren.
|
||||
Hvis du har `OPENCODE_PORT` sat i dit miljø, vil skrivebordsappen prøve at bruge den port for den lokale server.
|
||||
|
||||
- Deaktiver `OPENCODE_PORT` (eller velg en ledig port) og start på nytt.
|
||||
- Deaktiver `OPENCODE_PORT` (eller vælg en ledig port) og start på ny.
|
||||
|
||||
---
|
||||
|
||||
### Linux: Wayland / X11 problemer
|
||||
### Linux: Wayland / X11-problemer
|
||||
|
||||
På Linux kan nogle Wayland-oppsett forårsake tomme vinduer eller kompositorfeil.
|
||||
På Linux kan nogle Wayland-opsætninger forårsage tomme vinduer eller kompositorfejl.
|
||||
|
||||
- Hvis du er på Wayland og appen er tom/krasj, prøv at starte med `OC_ALLOW_WAYLAND=1`.
|
||||
- Hvis det gør ting verre, fjern det og prøv at starte under en X11-session i stedet.
|
||||
- Hvis du er på Wayland og appen er tom/crasher, prøv at starte med `OC_ALLOW_WAYLAND=1`.
|
||||
- Hvis det gør ting værre, fjern det og prøv at starte under en X11-session i stedet.
|
||||
|
||||
---
|
||||
|
||||
### Windows: WebView2 kjøretid
|
||||
### Windows: WebView2-runtime
|
||||
|
||||
På Windows krever OpenCode Desktop Microsoft Edge **WebView2 Runtime**. Hvis appen åpnes i et tomt vindu eller ikke starter, installer/opdater WebView2 og prøv igjen.
|
||||
På Windows kræver OpenCode Desktop Microsoft Edge **WebView2 Runtime**. Hvis appen åbnes i et tomt vindue eller ikke starter, installer/opdater WebView2 og prøv igen.
|
||||
|
||||
---
|
||||
|
||||
### Windows: Generelle ytelsesproblemer
|
||||
### Windows: Generelle ydeevneproblemer
|
||||
|
||||
Hvis du opplever treg ytelse, problemer med filtilgang eller terminalproblemer på Windows, kan du prøve at bruge [WSL (Windows Subsystem for Linux)](/docs/windows-wsl). WSL gir et Linux-miljø som fungerer mer sømløst med funksjonene til OpenCode.
|
||||
Hvis du oplever langsom ydeevne, problemer med filadgang eller terminalproblemer på Windows, kan du prøve at bruge [WSL (Windows Subsystem for Linux)](/docs/windows-wsl). WSL giver et Linux-miljø som fungerer mere sømløst med funktionerne i OpenCode.
|
||||
|
||||
---
|
||||
|
||||
### Varsler vises ikke
|
||||
### Meddelelser vises ikke
|
||||
|
||||
OpenCode Desktop viser bare systemvarsler når:
|
||||
OpenCode Desktop viser kun systemvarsler når:
|
||||
|
||||
- varsler er aktivert for OpenCode i OS-innstillingene dine, og
|
||||
- appvinduet er ikke fokusert.
|
||||
- varsler er aktiveret for OpenCode i dine OS-indstillinger, og
|
||||
- appvinduet ikke er fokuseret.
|
||||
|
||||
---
|
||||
|
||||
### Tilbakestill skrivebordsapplagring (siste utvei)
|
||||
### Nulstil desktop-applagring (sidste udvej)
|
||||
|
||||
Hvis appen ikke starter og du ikke kan slette innstillingene fra UI, nulstil skrivebordsappens lagrede tilstand.
|
||||
Hvis appen ikke starter og du ikke kan slette indstillingerne fra UI, nulstil skrivebordsappens gemte tilstand.
|
||||
|
||||
1. Avslutt OpenCode Desktop.
|
||||
2. Finn og slett disse filene (de finnes i OpenCode Desktop-appens datakatalog):
|
||||
1. Afslut OpenCode Desktop.
|
||||
2. Find og slet disse filer (de findes i OpenCode Desktop-appens datamappe):
|
||||
|
||||
- `opencode.settings.dat` (stasjonær standardserver URL)
|
||||
- `opencode.global.dat` og `opencode.workspace.*.dat` (UI tilstand som nylige servere/prosjekter)
|
||||
- `opencode.settings.dat` (skrivebordsstandardserver URL)
|
||||
- `opencode.global.dat` og `opencode.workspace.*.dat` (UI tilstand som nylige servere/projekter)
|
||||
|
||||
Slik finner du katalogen raskt:
|
||||
Sådan finder du mappen hurtigt:
|
||||
|
||||
- **macOS**: Finder -> `Cmd+Shift+G` -> `~/Library/Application Support` (søk deretter etter filnavnene ovenfor)
|
||||
- **Linux**: søk under `~/.local/share` etter filnavnene ovenfor
|
||||
- **Windows**: Trykk `WIN+R` -> `%APPDATA%` (søk deretter etter filnavnene ovenfor)
|
||||
- **macOS**: Finder -> `Cmd+Shift+G` -> `~/Library/Application Support` (søg derefter efter filnavnene ovenfor)
|
||||
- **Linux**: søg under `~/.local/share` efter filnavnene ovenfor
|
||||
- **Windows**: Tryk `WIN+R` -> `%APPDATA%` (søg derefter efter filnavnene ovenfor)
|
||||
|
||||
---
|
||||
|
||||
## Får hjelp
|
||||
## Få hjælp
|
||||
|
||||
Hvis du opplever problemer med OpenCode:
|
||||
Hvis du oplever problemer med OpenCode:
|
||||
|
||||
1. **Rapporter problemer på GitHub**
|
||||
|
||||
Den beste måten at rapportere feil eller be om funksjoner på er gjennom vårt GitHub-lager:
|
||||
Den bedste måde at rapportere fejl eller bede om funktioner på er gennem vores GitHub-repo:
|
||||
|
||||
[**github.com/anomalyco/opencode/issues**](https://github.com/anomalyco/opencode/issues)
|
||||
|
||||
Før du opreter et nytt problem, søk i eksisterende problemer for at se om problemet ditt allerede er rapportert.
|
||||
Før du opretter et nyt issue, søg i eksisterende issues for at se om dit problem allerede er rapporteret.
|
||||
|
||||
2. **Bli med i vår Discord**
|
||||
2. **Bliv en del af vores Discord**
|
||||
|
||||
For sanntidshjelp og fellesskapsdiskusjon, bli med i vår Discord-server:
|
||||
For hjælp i realtid og fællesskabsdiskussion, bliv en del af vores Discord-server:
|
||||
|
||||
[**opencode.ai/discord**](https://opencode.ai/discord)
|
||||
|
||||
---
|
||||
|
||||
## Vanlige problemer
|
||||
## Almindelige problemer
|
||||
|
||||
Her er nogle vanlige problemer og hvordan du kan løse dem.
|
||||
Her er nogle almindelige problemer og hvordan du kan løse dem.
|
||||
|
||||
---
|
||||
|
||||
### OpenCode vil ikke starte
|
||||
|
||||
1. Tjek loggene for feilmeldinger
|
||||
2. Prøv at kjøre med `--print-logs` for at se utdata i terminalen
|
||||
3. Sørg for at du har den nyeste versjonen med `opencode upgrade`
|
||||
1. Tjek logfilerne for fejlmeddelelser
|
||||
2. Prøv at køre med `--print-logs` for at se output i terminalen
|
||||
3. Sørg for at du har den nyeste version med `opencode upgrade`
|
||||
|
||||
---
|
||||
|
||||
### Autentiseringsproblemer
|
||||
### Godkendelsesproblemer
|
||||
|
||||
1. Prøv at autentisere på nytt med kommandoen `/connect` i TUI
|
||||
2. Tjek at API-nøklene dine er gyldige
|
||||
3. Sørg for at nettverket ditt tillater tilkoblinger til leverandørens API
|
||||
1. Prøv at godkende på ny med kommandoen `/connect` i TUI
|
||||
2. Tjek at dine API-nøgler er gyldige
|
||||
3. Sørg for at dit netværk tillader forbindelser til udbyderens API
|
||||
|
||||
---
|
||||
|
||||
### Modellen er ikke tilgængelig
|
||||
|
||||
1. Tjek at du har autentisert deg med leverandøren
|
||||
2. Kontroller at modellnavnet i konfigurasjonen er riktig
|
||||
3. Nogle modeller kan kreve spesifikk tilgang eller abonnement
|
||||
1. Tjek at du har godkendt dig med udbyderen
|
||||
2. Kontroller at modelnavnet i konfigurationen er rigtigt
|
||||
3. Nogle modeller kan kræve specifik adgang eller abonnement
|
||||
|
||||
Hvis du støter på `ProviderModelNotFoundError` er du mest sannsynlig feil
|
||||
refererer til en modell et sted.
|
||||
Modeller skal refereres slik: `<providerId>/<modelId>`
|
||||
Hvis du støder på `ProviderModelNotFoundError` refererer du mest sandsynligt forkert
|
||||
til en model et sted.
|
||||
Modeller skal refereres sådan: `<providerId>/<modelId>`
|
||||
|
||||
Eksempler:
|
||||
|
||||
@@ -227,52 +227,52 @@ Eksempler:
|
||||
- `openrouter/google/gemini-2.5-flash`
|
||||
- `opencode/kimi-k2`
|
||||
|
||||
For at finne ut hvilke modeller du har tilgang til, kjør `opencode models`
|
||||
For at finde ud af hvilke modeller du har adgang til, kør `opencode models`
|
||||
|
||||
---
|
||||
|
||||
### ProviderInitError
|
||||
|
||||
Hvis du støter på en ProviderInitError, har du sannsynligvis en ugyldig eller ødelagt konfigurasjon.
|
||||
Hvis du støder på en ProviderInitError, har du sandsynligvis en ugyldig eller ødelagt konfiguration.
|
||||
|
||||
For at løse dette:
|
||||
|
||||
1. Kontroller først at leverandøren din er riktig konfigurert ved at følge [leverandørveiledningen](/docs/providers)
|
||||
2. Hvis problemet vedvarer, prøv at tømme den lagrede konfigurasjonen:
|
||||
1. Kontroller først at din udbyder er rigtigt konfigureret ved at følge [udbydervejledningen](/docs/providers)
|
||||
2. Hvis problemet vedvarer, prøv at tømme den gemte konfiguration:
|
||||
|
||||
```bash
|
||||
rm -rf ~/.local/share/opencode
|
||||
```
|
||||
|
||||
På Windows, trykk `WIN+R` og slett: `%USERPROFILE%\.local\share\opencode`
|
||||
På Windows, tryk `WIN+R` og slet: `%USERPROFILE%\.local\share\opencode`
|
||||
|
||||
3. Autentiser på nytt med leverandøren din ved at bruge kommandoen `/connect` i TUI.
|
||||
3. Godkend på ny med din udbyder ved at bruge kommandoen `/connect` i TUI.
|
||||
|
||||
---
|
||||
|
||||
### AI_APICallError og leverandørpakkeproblemer
|
||||
### AI_APICallError og udbyderpakkeproblemer
|
||||
|
||||
Hvis du støter på API anropsfeil, kan dette skyldes utdaterte leverandørpakker. opencode installerer dynamisk leverandørpakker (OpenAI, Anthropic, Google, etc.) etter behov og cacher dem lokalt.
|
||||
Hvis du støder på API-kaldsfejl, kan dette skyldes forældede udbyderpakker. opencode installerer dynamisk udbyderpakker (OpenAI, Anthropic, Google, etc.) efter behov og cacher dem lokalt.
|
||||
|
||||
For at løse problemer med leverandørpakke:
|
||||
For at løse problemer med udbyderpakke:
|
||||
|
||||
1. Tøm leverandørens pakkebuffer:
|
||||
1. Tøm udbyderens pakkecache:
|
||||
|
||||
```bash
|
||||
rm -rf ~/.cache/opencode
|
||||
```
|
||||
|
||||
På Windows, trykk `WIN+R` og slett: `%USERPROFILE%\.cache\opencode`
|
||||
På Windows, tryk `WIN+R` og slet: `%USERPROFILE%\.cache\opencode`
|
||||
|
||||
2. Start opencode på nytt for at installere de nyeste leverandørpakkene på nytt
|
||||
2. Start opencode på ny for at installere de nyeste udbyderpakker på ny
|
||||
|
||||
Dette vil tvinge opencode til at laste ned de nyeste versjonene av leverandørpakkene, som ofte løser kompatibilitetsproblemer med modellparametere og API endringer.
|
||||
Dette vil tvinge opencode til at downloade de nyeste versioner af udbyderpakkerne, som ofte løser kompatibilitetsproblemer med modelparametre og API-ændringer.
|
||||
|
||||
---
|
||||
|
||||
### Kopier/lim inn fungerer ikke på Linux
|
||||
### Kopier/indsæt virker ikke på Linux
|
||||
|
||||
Linux-brugere må ha ett av følgende utklippstavleverktøy installert for at kopier/lim inn-funksjonalitet skal fungere:
|
||||
Linux-brugere skal have et af følgende udklipsholderværktøjer installeret for at kopier/indsæt-funktionalitet skal fungere:
|
||||
|
||||
**For X11-systemer:**
|
||||
|
||||
@@ -288,7 +288,7 @@ apt install -y xsel
|
||||
apt install -y wl-clipboard
|
||||
```
|
||||
|
||||
**For hodeløse miljøer:**
|
||||
**For hovedløse miljøer:**
|
||||
|
||||
```bash
|
||||
apt install -y xvfb
|
||||
@@ -297,4 +297,4 @@ Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &
|
||||
export DISPLAY=:99.0
|
||||
```
|
||||
|
||||
opencode vil oppdage om du bruger Wayland og foretrekker `wl-clipboard`, ellers vil den prøve at finne utklippstavleverktøy i rekkefølgen: `xclip` og `xsel`.
|
||||
opencode vil opdage om du bruger Wayland og foretrække `wl-clipboard`, ellers vil den prøve at finde udklipsholderværktøjer i rækkefølgen: `xclip` og `xsel`.
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
---
|
||||
title: TUI
|
||||
description: Bruge OpenCode-terminalbrugergrænsefladeet.
|
||||
description: Brug af OpenCode-terminalbrugergrænsefladen.
|
||||
---
|
||||
|
||||
import { Tabs, TabItem } from "@astrojs/starlight/components"
|
||||
|
||||
OpenCode gir et interaktivt terminalgrænseflade eller TUI for at jobbe med prosjektene dine med en LLM.
|
||||
OpenCode giver en interaktiv terminalgrænseflade eller TUI til at arbejde med dine projekter med en LLM.
|
||||
|
||||
Å køre OpenCode starter TUI for nuværende mappe.
|
||||
At køre OpenCode starter TUI for den nuværende mappe.
|
||||
|
||||
```bash
|
||||
opencode
|
||||
@@ -29,10 +29,10 @@ Give me a quick summary of the codebase.
|
||||
|
||||
## Filreferencer
|
||||
|
||||
Du kan referere til filer i dine meddelelser med `@`. Det laver en fuzzy filsøgning i det nuværende arbejdsmappe.
|
||||
Du kan referere til filer i dine beskeder med `@`. Det laver en fuzzy filsøgning i den nuværende arbejdsmappe.
|
||||
|
||||
:::tip
|
||||
Du kan også bruge `@` til at referere til filer i dine meddelelser.
|
||||
Du kan også bruge `@` til at referere til filer i dine beskeder.
|
||||
:::
|
||||
|
||||
```text "@packages/functions/src/api/index.ts"
|
||||
@@ -51,19 +51,19 @@ Start en besked med `!` for at køre en shell-kommando.
|
||||
!ls -la
|
||||
```
|
||||
|
||||
Outputtet fra kommandoen tilføjes til samtalen som et værktøjresultat.
|
||||
Outputtet fra kommandoen tilføjes til samtalen som et værktøjsresultat.
|
||||
|
||||
---
|
||||
|
||||
## Kommandoer
|
||||
|
||||
Når du bruger OpenCode TUI, kan du skrive `/` etterfulgt av et kommandonavn for raskt at utføre handlinger. For eksempel:
|
||||
Når du bruger OpenCode TUI, kan du skrive `/` efterfulgt af et kommandonavn for hurtigt at udføre handlinger. For eksempel:
|
||||
|
||||
```bash frame="none"
|
||||
/help
|
||||
```
|
||||
|
||||
De fleste kommandoer har også genvejstast som bruger `ctrl+x` som Leader-tast, der `ctrl+x` er standard Leader-tast. [Læs mere](/docs/keybinds).
|
||||
De fleste kommandoer har også genvejstaster som bruger `ctrl+x` som Leader-tast, hvor `ctrl+x` er standard Leader-tast. [Læs mere](/docs/keybinds).
|
||||
|
||||
Her er alle tilgængelige skråstregskommandoer:
|
||||
|
||||
@@ -71,7 +71,7 @@ Her er alle tilgængelige skråstregskommandoer:
|
||||
|
||||
### connect
|
||||
|
||||
Tilføj en leverandør til OpenCode. Lar deg velge fra tilgængelige leverandører og tilføje til deres API-nøgler.
|
||||
Tilføj en udbyder til OpenCode. Lader dig vælge fra tilgængelige udbydere og tilføje deres API-nøgler.
|
||||
|
||||
```bash frame="none"
|
||||
/connect
|
||||
@@ -93,7 +93,7 @@ Komprimer nuværende session. _Alias_: `/summarize`
|
||||
|
||||
### details
|
||||
|
||||
Veksle værktøjutførelsesdetaljer.
|
||||
Skift visning af værktøjsudførelsesdetaljer.
|
||||
|
||||
```bash frame="none"
|
||||
/details
|
||||
@@ -105,7 +105,7 @@ Veksle værktøjutførelsesdetaljer.
|
||||
|
||||
### editor
|
||||
|
||||
Åbn eksternt redigeringsprogram for at skrive beskeder. Bruger redigeringsprogrammet i miljøvariabelen `EDITOR`. [Læs mere](#editor-setup).
|
||||
Åbn eksternt redigeringsprogram for at skrive beskeder. Bruger redigeringsprogrammet i miljøvariablen `EDITOR`. [Læs mere](#editor-setup).
|
||||
|
||||
```bash frame="none"
|
||||
/editor
|
||||
@@ -129,7 +129,7 @@ Afslut OpenCode. _Aliaser_: `/quit`, `/q`
|
||||
|
||||
### export
|
||||
|
||||
Eksporter nuværende samtale til Markdown og åpne i standardredigeringsprogrammet. Bruger redigeringsprogrammet i miljøvariabelen `EDITOR`. [Læs mere](#editor-setup).
|
||||
Eksporter nuværende samtale til Markdown og åbn i standardredigeringsprogrammet. Bruger redigeringsprogrammet i miljøvariablen `EDITOR`. [Læs mere](#editor-setup).
|
||||
|
||||
```bash frame="none"
|
||||
/export
|
||||
@@ -189,14 +189,13 @@ Start en ny session. _Alias_: `/clear`
|
||||
|
||||
### redo
|
||||
|
||||
Gentag en tidligere fortrudt besked. Kun tilgængelig etter brug av `/undo`.
|
||||
Gentag en tidligere fortrudt besked. Kun tilgængelig efter brug af `/undo`.
|
||||
|
||||
:::tip
|
||||
Eventuelle filændringer vil også bli genoprettet.
|
||||
Eventuelle filændringer vil også blive genoprettet.
|
||||
:::
|
||||
|
||||
Internt bruger dette Git til at administrere filændringerne. Så dit prosjekt **må
|
||||
være et Git-depot**.
|
||||
Internt bruger dette Git til at administrere filændringerne. Så dit projekt **skal være et Git-depot**.
|
||||
|
||||
```bash frame="none"
|
||||
/redo
|
||||
@@ -208,7 +207,7 @@ være et Git-depot**.
|
||||
|
||||
### sessions
|
||||
|
||||
List opp og bytt mellom sessioner. _Aliaser_: `/resume`, `/continue`
|
||||
List og skift mellem sessioner. _Aliaser_: `/resume`, `/continue`
|
||||
|
||||
```bash frame="none"
|
||||
/sessions
|
||||
@@ -244,10 +243,10 @@ Liste over tilgængelige temaer.
|
||||
|
||||
### thinking
|
||||
|
||||
Veksle mellom synligheten av tenke-/resonneringsblokker i samtalen. Når den er aktiveret, kan du se modellens resonneringsprosess for modeller som støtter utvidet tenkning.
|
||||
Skift synligheden af tænke-/ræsonneringsblokke i samtalen. Når den er aktiveret, kan du se modellens ræsonneringsproces for modeller, som understøtter udvidet tænkning.
|
||||
|
||||
:::note
|
||||
Denne kommandoen kontrollerer bare om tenkeblokker **vises** - den aktiverer eller deaktiverer ikke modellens resonneringsmuligheter. For at veksle mellom faktiske resonneringsmuligheter, brug `ctrl+t` for at bla gennem modellvarianter.
|
||||
Denne kommando kontrollerer bare om tænkeblokke **vises** - den aktiverer eller deaktiverer ikke modellens ræsonneringsmuligheder. For at skifte mellem faktiske ræsonneringsmuligheder, brug `ctrl+t` for at bladre gennem modelvarianter.
|
||||
:::
|
||||
|
||||
```bash frame="none"
|
||||
@@ -258,14 +257,13 @@ Denne kommandoen kontrollerer bare om tenkeblokker **vises** - den aktiverer ell
|
||||
|
||||
### undo
|
||||
|
||||
Angre siste besked i samtalen. Fjerner den siste brugerbeskeden, alle påfølgende svar og eventuelle filændringer.
|
||||
Fortryd sidste besked i samtalen. Fjerner den sidste brugerbesked, alle efterfølgende svar og eventuelle filændringer.
|
||||
|
||||
:::tip
|
||||
Eventuelle filændringer vil også bli nullstillet.
|
||||
Eventuelle filændringer vil også blive nulstillet.
|
||||
:::
|
||||
|
||||
Internt bruger dette Git til at administrere filændringerne. Så dit prosjekt **må
|
||||
være et Git-depot**.
|
||||
Internt bruger dette Git til at administrere filændringerne. Så dit projekt **skal være et Git-depot**.
|
||||
|
||||
```bash frame="none"
|
||||
/undo
|
||||
@@ -277,7 +275,7 @@ være et Git-depot**.
|
||||
|
||||
### unshare
|
||||
|
||||
Ophæv deling av nuværende session. [Læs mere](/docs/share#un-sharing).
|
||||
Ophæv deling af nuværende session. [Læs mere](/docs/share#un-sharing).
|
||||
|
||||
```bash frame="none"
|
||||
/unshare
|
||||
@@ -287,7 +285,7 @@ Ophæv deling av nuværende session. [Læs mere](/docs/share#un-sharing).
|
||||
|
||||
## Opsætning af editor
|
||||
|
||||
Både kommandoerne `/editor` og `/export` bruger editoren som er spesifisert i miljøvariabelen `EDITOR`.
|
||||
Både kommandoerne `/editor` og `/export` bruger editoren som er specificeret i miljøvariablen `EDITOR`.
|
||||
|
||||
<Tabs>
|
||||
<TabItem label="Linux/macOS">
|
||||
@@ -301,7 +299,7 @@ Både kommandoerne `/editor` og `/export` bruger editoren som er spesifisert i m
|
||||
export EDITOR="code --wait"
|
||||
```
|
||||
|
||||
For at gøre det permanent, tilføj dette til i shellprofilen din;
|
||||
For at gøre det permanent, tilføj dette til din shellprofil;
|
||||
`~/.bashrc`, `~/.zshrc` osv.
|
||||
|
||||
</TabItem>
|
||||
@@ -315,8 +313,7 @@ Både kommandoerne `/editor` og `/export` bruger editoren som er spesifisert i m
|
||||
set EDITOR=code --wait
|
||||
```
|
||||
|
||||
For at gøre det permanent, brug **Systemegenskaber** > **Miljø
|
||||
Variabler**.
|
||||
For at gøre det permanent, brug **Systemegenskaber** > **Miljøvariabler**.
|
||||
|
||||
</TabItem>
|
||||
|
||||
@@ -329,7 +326,7 @@ Både kommandoerne `/editor` og `/export` bruger editoren som er spesifisert i m
|
||||
$env:EDITOR = "code --wait"
|
||||
```
|
||||
|
||||
For at gøre det permanent, tilføj dette til i PowerShell-profilen din.
|
||||
For at gøre det permanent, tilføj dette til din PowerShell-profil.
|
||||
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
@@ -346,10 +343,10 @@ Populære redigeringsalternativer inkluderer:
|
||||
- `subl` - Sublime Text
|
||||
|
||||
:::note
|
||||
Nogle editorer som VS Code må startes med flaget `--wait`.
|
||||
Nogle editorer som VS Code skal startes med flaget `--wait`.
|
||||
:::
|
||||
|
||||
Nogle editorer kræver kommandolinjeargumenter for at køre i blokeringstilstand. `--wait`-flaget gør at redigeringsprocessen blokeres til den lukkes.
|
||||
Nogle editorer kræver kommandolinjeargumenter for at køre i blokeringstilstand. `--wait`-flaget gør at redigeringsprocessen blokeres indtil den lukkes.
|
||||
|
||||
---
|
||||
|
||||
@@ -371,20 +368,20 @@ Du kan tilpasse TUI-adfærden gennem OpenCode-konfigurationsfilen.
|
||||
|
||||
### Indstillinger
|
||||
|
||||
- `scroll_acceleration` - Aktiver rulleacceleration i macOS-stil for jævn, naturlig rulning. Når aktiveret, øger rullehastigheden med raske rullebevægelser og forblir presis for langsommere bevægelser. **Denne indstillingen har forrang over `scroll_speed` og tilsidesætter den når den er aktiveret.**
|
||||
- `scroll_speed` - Styrer hvor raskt TUI ruller når du bruger rullekommandoer (minimum: `1`). Standard er `3`. **Bemærk: Dette ignoreres hvis `scroll_acceleration.enabled` er sat til `true`.**
|
||||
- `scroll_acceleration` - Aktiver rulleacceleration i macOS-stil for jævn, naturlig rulning. Når aktiveret, øger rullehastigheden med hurtige rullebevægelser og forbliver præcis for langsommere bevægelser. **Denne indstilling har forrang over `scroll_speed` og tilsidesætter den, når den er aktiveret.**
|
||||
- `scroll_speed` - Styrer hvor hurtigt TUI ruller, når du bruger rullekommandoer (minimum: `1`). Standard er `3`. **Bemærk: Dette ignoreres hvis `scroll_acceleration.enabled` er sat til `true`.**
|
||||
|
||||
---
|
||||
|
||||
## Tilpasning
|
||||
|
||||
Du kan tilpasse forskellige aspekter av TUI-visningen ved at bruge kommandopaletten (`ctrl+x h` eller `/help`). Disse indstillingene gemmes ved omstarter.
|
||||
Du kan tilpasse forskellige aspekter af TUI-visningen ved at bruge kommandopaletten (`ctrl+x h` eller `/help`). Disse indstillinger gemmes ved genstart.
|
||||
|
||||
---
|
||||
|
||||
#### Username display
|
||||
#### Visning af brugernavn
|
||||
|
||||
Veksle om brugernavnet dit vises i chat-beskeder. Få adgang til dette gennem:
|
||||
Skift om dit brugernavn vises i chat-beskeder. Få adgang til dette gennem:
|
||||
|
||||
- Kommandopalet: Søg efter "brugernavn" eller "skjul brugernavn"
|
||||
- Innstillingen gemmes automatisk og vil bli husket over TUI sessioner
|
||||
- Indstillingen gemmes automatisk og vil blive husket over TUI-sessioner
|
||||
|
||||
@@ -21,7 +21,7 @@ Dette starter en lokal server på `127.0.0.1` med en tilfældig tilgængelig por
|
||||
Hvis `OPENCODE_SERVER_PASSWORD` ikke er indstillet, vil serveren være usikret. Dette er fint til lokal brug, men bør indstilles til netværksadgang.
|
||||
:::
|
||||
|
||||
:::tip[Windows Users]
|
||||
:::tip[Windows-brugere]
|
||||
For den bedste oplevelse skal du køre `opencode web` fra [WSL](/docs/windows-wsl) i stedet for PowerShell. Dette sikrer korrekt filsystemadgang og terminalintegration.
|
||||
:::
|
||||
|
||||
|
||||
@@ -1,77 +1,77 @@
|
||||
---
|
||||
title: Zen
|
||||
description: Utvalgt liste over modeller levert av OpenCode.
|
||||
description: Udvalgt liste over modeller leveret af OpenCode.
|
||||
---
|
||||
|
||||
import config from "../../../../config.mjs"
|
||||
export const console = config.console
|
||||
export const email = `mailto:${config.email}`
|
||||
|
||||
OpenCode Zen er en liste over testede og verifiserte modeller levert av OpenCode-teamet.
|
||||
OpenCode Zen er en liste over testede og verificerede modeller leveret af OpenCode-teamet.
|
||||
|
||||
:::note
|
||||
OpenCode Zen er for øyeblikket i beta.
|
||||
OpenCode Zen er i øjeblikket i beta.
|
||||
:::
|
||||
|
||||
Zen fungerer som alle andre leverandører i OpenCode. Du logger på OpenCode Zen og får
|
||||
din API-nøgle. Den er **helt valgfri** og du trenger ikke bruge den for at bruge den
|
||||
Zen fungerer som alle andre udbydere i OpenCode. Du logger på OpenCode Zen og får
|
||||
din API-nøgle. Den er **helt valgfri** og du behøver ikke bruge den for at bruge
|
||||
OpenCode.
|
||||
|
||||
---
|
||||
|
||||
## Bakgrunn
|
||||
## Baggrund
|
||||
|
||||
Det er et stort antall modeller der ute, men bare nogle få av dem
|
||||
disse modellene fungerer godt som kodeagenter. I tiltilføj er de fleste tilbydere
|
||||
konfigurert veldig annerledes; slik at du får veldig forskjellig ytelse og kvalitet.
|
||||
Der er et stort antal modeller derude, men kun få af dem
|
||||
fungerer godt som kodeagenter. Derudover er de fleste udbydere
|
||||
konfigureret meget forskelligt, så du får meget forskellig ydeevne og kvalitet.
|
||||
|
||||
:::tip
|
||||
Vi testet en utvalgt gruppe modeller og leverandører som fungerer godt med OpenCode.
|
||||
Vi testede en udvalgt gruppe modeller og udbydere, der fungerer godt med OpenCode.
|
||||
:::
|
||||
|
||||
Så hvis du bruger en modell gjennom noe som OpenRouter, kan du aldri bli det
|
||||
sikker på om du får den beste versjonen av modellen du ønsker.
|
||||
Så hvis du bruger en model gennem noget som OpenRouter, kan du aldrig være
|
||||
sikker på, om du får den bedste version af modellen, du ønsker.
|
||||
|
||||
For at fikse dette gjorde vi et par ting:
|
||||
|
||||
1. Vi testet en utvalgt gruppe modeller og snakket med teamene deres om hvordan
|
||||
best kjøre dem.
|
||||
2. Vi samarbeidet deretter med nogle få leverandører for at sikre at disse ble servert
|
||||
riktig.
|
||||
3. Til slutt benchmarket vi kombinasjonen av modell/leverandør og kom frem
|
||||
med en liste som vi har lyst til at anbefale.
|
||||
1. Vi testede en udvalgt gruppe modeller og talte med deres teams om, hvordan
|
||||
man bedst kører dem.
|
||||
2. Vi samarbejdede derefter med nogle få udbydere for at sikre, at disse blev serveret
|
||||
korrekt.
|
||||
3. Til sidst benchmarkede vi kombinationen af model/udbyder og kom frem
|
||||
til en liste, som vi har lyst til at anbefale.
|
||||
|
||||
OpenCode Zen er en AI gateway som gir deg tilgang til disse modellene.
|
||||
OpenCode Zen er en AI gateway, der giver dig adgang til disse modeller.
|
||||
|
||||
---
|
||||
|
||||
## Slik fungerer det
|
||||
## Sådan fungerer det
|
||||
|
||||
OpenCode Zen fungerer som alle andre leverandører i OpenCode.
|
||||
OpenCode Zen fungerer som alle andre udbydere i OpenCode.
|
||||
|
||||
1. Du logger på **<a href={console}>OpenCode Zen</a>**, tilføj til fakturering
|
||||
detaljer, og kopier API-nøgleen.
|
||||
2. Du kjører kommandoen `/connect` i TUI, velger OpenCode Zen og limer inn API-nøgleen.
|
||||
3. Kjør `/models` i TUI for at se listen over modeller vi anbefaler.
|
||||
1. Du logger på **<a href={console}>OpenCode Zen</a>**, tilføjer faktureringsoplysninger
|
||||
og kopierer API-nøglen.
|
||||
2. Du kører kommandoen `/connect` i TUI, vælger OpenCode Zen og indsætter API-nøglen.
|
||||
3. Kør `/models` i TUI for at se listen over modeller, vi anbefaler.
|
||||
|
||||
Du belastes per forespørsel, og du kan tilføje til kreditt på kontoen din.
|
||||
Du opkræves per anmodning, og du kan tilføje kredit til din konto.
|
||||
|
||||
---
|
||||
|
||||
## Endepunkter
|
||||
## Endpoints
|
||||
|
||||
Du kan også få tilgang til modellene våre gjennom følgende API-endepunkter.
|
||||
Du kan også få adgang til vores modeller gennem følgende API-endpoints.
|
||||
|
||||
| Modell | Modell ID | Endepunkt | AI SDK Pakke |
|
||||
| Model | Model ID | Endpoint | AI SDK Pakke |
|
||||
| ------------------- | ------------------ | -------------------------------------------------- | --------------------------- |
|
||||
| GPT 5.2 | gpt-5.2 | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
|
||||
| GPT 5.2 Codex | gpt-5.2-kodeks | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
|
||||
| GPT 5.2 Codex | gpt-5.2-codex | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
|
||||
| GPT 5.1 | gpt-5.1 | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
|
||||
| GPT 5.1 Codex | gpt-5.1-kodeks | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
|
||||
| GPT 5.1 Codex | gpt-5.1-codex | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
|
||||
| GPT 5.1 Codex Max | gpt-5.1-codex-max | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
|
||||
| GPT 5.1 Codex Mini | gpt-5.1-codex-mini | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
|
||||
| GPT 5 | gpt-5 | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
|
||||
| GPT 5 Codex | gpt-5-kodeks | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
|
||||
| GPT 5 Codex | gpt-5-codex | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
|
||||
| GPT 5 Nano | gpt-5-nano | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
|
||||
| Claude Sonnet 4.5 | claude-sonnett-4-5 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
|
||||
| Claude Sonnet 4 | claude-sonnett-4 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
|
||||
@@ -83,20 +83,20 @@ Du kan også få tilgang til modellene våre gjennom følgende API-endepunkter.
|
||||
| Gemini 3 Pro | gemini-3-pro | `https://opencode.ai/zen/v1/models/gemini-3-pro` | `@ai-sdk/google` |
|
||||
| Gemini 3 Flash | gemini-3-flash | `https://opencode.ai/zen/v1/models/gemini-3-flash` | `@ai-sdk/google` |
|
||||
| MiniMax M2.1 | minimax-m2.1 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||
| MiniMax M2.1 Gratis | minimax-m2.1-fri | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
|
||||
| MiniMax M2.1 Gratis | minimax-m2.1-free | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
|
||||
| GLM 4.7 | glm-4.7 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||
| GLM 4.7 Gratis | glm-4.7-fri | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||
| GLM 4.7 Gratis | glm-4.7-free | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||
| GLM 4.6 | glm-4.6 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||
| Kimi K2.5 | kimi-k2.5 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||
| Kimi K2.5 Gratis | kimi-k2.5-fri | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||
| Kimi K2 Tenker | kimi-k2-tenking | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||
| Kimi K2.5 Gratis | kimi-k2.5-free | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||
| Kimi K2 Tenker | kimi-k2-thinking | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||
| Kimi K2 | kimi-k2 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||
| Qwen3-koder 480B | qwen3-koder | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||
| Stor sylteagurk | stor sylteagurk | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||
| Qwen3-koder 480B | qwen3-coder | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||
| Stor sylteagurk | big-pickle | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||
|
||||
[modell-id](/docs/config/#models) i OpenCode-konfigurasjonen
|
||||
[model-id](/docs/config/#models) i OpenCode-konfigurationen
|
||||
bruger formatet `opencode/<model-id>`. For eksempel, for GPT 5.2 Codex, ville du
|
||||
brug `opencode/gpt-5.2-codex` i konfigurasjonen din.
|
||||
bruge `opencode/gpt-5.2-codex` i din konfiguration.
|
||||
|
||||
---
|
||||
|
||||
@@ -112,143 +112,143 @@ https://opencode.ai/zen/v1/models
|
||||
|
||||
## Priser
|
||||
|
||||
Vi støtter en pay-as-you-go-modell. Nedenfor er prisene **per 1 million tokens**.
|
||||
Vi støtter en pay-as-you-go-model. Nedenfor er priserne **per 1 million tokens**.
|
||||
|
||||
| Modell | Inngang | Utgang | Bufret Les | Bufret skriv |
|
||||
| --------------------------------- | ------- | ------ | ---------- | ------------ |
|
||||
| Stor sylteagurk | Gratis | Gratis | Gratis | - |
|
||||
| MiniMax M2.1 Gratis | Gratis | Gratis | Gratis | - |
|
||||
| MiniMax M2.1 | $0,30 | $1,20 | $0,10 | - |
|
||||
| GLM 4.7 Gratis | Gratis | Gratis | Gratis | - |
|
||||
| GLM 4.7 | $0,60 | $2,20 | $0,10 | - |
|
||||
| GLM 4.6 | $0,60 | $2,20 | $0,10 | - |
|
||||
| Kimi K2.5 Gratis | Gratis | Gratis | Gratis | - |
|
||||
| Kimi K2.5 | $0,60 | $3,00 | $0,08 | - |
|
||||
| Kimi K2 Tenker | $0,40 | $2,50 | - | - |
|
||||
| Kimi K2 | $0,40 | $2,50 | - | - |
|
||||
| Qwen3-koder 480B | $0,45 | $1,50 | - | - |
|
||||
| Claude Sonnet 4.5 (≤ 200K tokens) | $3,00 | $15,00 | $0,30 | $3,75 |
|
||||
| Claude Sonnet 4.5 (> 200K tokens) | $6,00 | $22,50 | $0,60 | $7,50 |
|
||||
| Claude Sonnet 4 (≤ 200K tokens) | $3,00 | $15,00 | $0,30 | $3,75 |
|
||||
| Claude Sonnet 4 (> 200K tokens) | $6,00 | $22,50 | $0,60 | $7,50 |
|
||||
| Claude Haiku 4.5 | $1,00 | $5,00 | $0,10 | $1,25 |
|
||||
| Claude Haiku 3.5 | $0,80 | $4,00 | $0,08 | $1,00 |
|
||||
| Claude Opus 4.6 (≤ 200K tokens) | $5,00 | $25,00 | $0,50 | $6,25 |
|
||||
| Claude Opus 4.6 (> 200K tokens) | $10,00 | $37,50 | $1,00 | $12,50 |
|
||||
| Claude Opus 4.5 | $5,00 | $25,00 | $0,50 | $6,25 |
|
||||
| Claude Opus 4.1 | $15,00 | $75,00 | $1,50 | $18,75 |
|
||||
| Gemini 3 Pro (≤ 200K tokens) | $2,00 | $12,00 | $0,20 | - |
|
||||
| Gemini 3 Pro (> 200K tokens) | $4,00 | $18,00 | $0,40 | - |
|
||||
| Gemini 3 Flash | $0,50 | $3,00 | $0,05 | - |
|
||||
| GPT 5.2 | $1,75 | $14,00 | $0,175 | - |
|
||||
| GPT 5.2 Codex | $1,75 | $14,00 | $0,175 | - |
|
||||
| GPT 5.1 | $1,07 | $8,50 | $0,107 | - |
|
||||
| GPT 5.1 Codex | $1,07 | $8,50 | $0,107 | - |
|
||||
| GPT 5.1 Codex Max | $1,25 | $10,00 | $0,125 | - |
|
||||
| GPT 5.1 Codex Mini | $0,25 | $2,00 | $0,025 | - |
|
||||
| GPT 5 | $1,07 | $8,50 | $0,107 | - |
|
||||
| GPT 5 Codex | $1,07 | $8,50 | $0,107 | - |
|
||||
| GPT 5 Nano | Gratis | Gratis | Gratis | - |
|
||||
| Model | Input | Output | Cached Læs | Cached Skriv |
|
||||
| --------------------------------- | ------ | ------ | ---------- | ------------ |
|
||||
| Stor sylteagurk | Gratis | Gratis | Gratis | - |
|
||||
| MiniMax M2.1 Gratis | Gratis | Gratis | Gratis | - |
|
||||
| MiniMax M2.1 | $0,30 | $1,20 | $0,10 | - |
|
||||
| GLM 4.7 Gratis | Gratis | Gratis | Gratis | - |
|
||||
| GLM 4.7 | $0,60 | $2,20 | $0,10 | - |
|
||||
| GLM 4.6 | $0,60 | $2,20 | $0,10 | - |
|
||||
| Kimi K2.5 Gratis | Gratis | Gratis | Gratis | - |
|
||||
| Kimi K2.5 | $0,60 | $3,00 | $0,08 | - |
|
||||
| Kimi K2 Tenker | $0,40 | $2,50 | - | - |
|
||||
| Kimi K2 | $0,40 | $2,50 | - | - |
|
||||
| Qwen3-koder 480B | $0,45 | $1,50 | - | - |
|
||||
| Claude Sonnet 4.5 (≤ 200K tokens) | $3,00 | $15,00 | $0,30 | $3,75 |
|
||||
| Claude Sonnet 4.5 (> 200K tokens) | $6,00 | $22,50 | $0,60 | $7,50 |
|
||||
| Claude Sonnet 4 (≤ 200K tokens) | $3,00 | $15,00 | $0,30 | $3,75 |
|
||||
| Claude Sonnet 4 (> 200K tokens) | $6,00 | $22,50 | $0,60 | $7,50 |
|
||||
| Claude Haiku 4.5 | $1,00 | $5,00 | $0,10 | $1,25 |
|
||||
| Claude Haiku 3.5 | $0,80 | $4,00 | $0,08 | $1,00 |
|
||||
| Claude Opus 4.6 (≤ 200K tokens) | $5,00 | $25,00 | $0,50 | $6,25 |
|
||||
| Claude Opus 4.6 (> 200K tokens) | $10,00 | $37,50 | $1,00 | $12,50 |
|
||||
| Claude Opus 4.5 | $5,00 | $25,00 | $0,50 | $6,25 |
|
||||
| Claude Opus 4.1 | $15,00 | $75,00 | $1,50 | $18,75 |
|
||||
| Gemini 3 Pro (≤ 200K tokens) | $2,00 | $12,00 | $0,20 | - |
|
||||
| Gemini 3 Pro (> 200K tokens) | $4,00 | $18,00 | $0,40 | - |
|
||||
| Gemini 3 Flash | $0,50 | $3,00 | $0,05 | - |
|
||||
| GPT 5.2 | $1,75 | $14,00 | $0,175 | - |
|
||||
| GPT 5.2 Codex | $1,75 | $14,00 | $0,175 | - |
|
||||
| GPT 5.1 | $1,07 | $8,50 | $0,107 | - |
|
||||
| GPT 5.1 Codex | $1,07 | $8,50 | $0,107 | - |
|
||||
| GPT 5.1 Codex Max | $1,25 | $10,00 | $0,125 | - |
|
||||
| GPT 5.1 Codex Mini | $0,25 | $2,00 | $0,025 | - |
|
||||
| GPT 5 | $1,07 | $8,50 | $0,107 | - |
|
||||
| GPT 5 Codex | $1,07 | $8,50 | $0,107 | - |
|
||||
| GPT 5 Nano | Gratis | Gratis | Gratis | - |
|
||||
|
||||
Du tilføjer kanskje merke til _Claude Haiku 3.5_ i brugshistorikken din. Dette er en [lavprismodell](/docs/config/#models) som bruges til at generere titlene på sessionene dine.
|
||||
Du bemærker måske _Claude Haiku 3.5_ i din brugshistorik. Dette er en [lavprismodel](/docs/config/#models), som bruges til at generere titlerne på dine sessioner.
|
||||
|
||||
:::note
|
||||
Kredittkortgebyrer overføres til kostpris (4,4 % + $0,30 per transaksjon); vi belaster ikke noe utover det.
|
||||
Kreditkortgebyrer overføres til kostpris (4,4 % + $0,30 per transaktion); vi opkræver ikke noget udover det.
|
||||
:::
|
||||
|
||||
De gratis modellene:
|
||||
De gratis modeller:
|
||||
|
||||
- GLM 4.7 Free er tilgængelig på OpenCode i en begrænset periode. Teamet bruger denne tiden til at samle tilbagemeldinger og forbedre modellen.
|
||||
- Kimi K2.5 Gratis er tilgængelig på OpenCode i en begrænset periode. Teamet bruger denne tiden til at samle tilbagemeldinger og forbedre modellen.
|
||||
- MiniMax M2.1 Free er tilgængelig på OpenCode i en begrænset periode. Teamet bruger denne tiden til at samle tilbagemeldinger og forbedre modellen.
|
||||
- Big Pickle er en stealth-modell som er gratis på OpenCode i en begrænset periode. Teamet bruger denne tiden til at samle tilbagemeldinger og forbedre modellen.
|
||||
- GLM 4.7 Gratis er tilgængelig på OpenCode i en begrænset periode. Teamet bruger denne tid til at samle feedback og forbedre modellen.
|
||||
- Kimi K2.5 Gratis er tilgængelig på OpenCode i en begrænset periode. Teamet bruger denne tid til at samle feedback og forbedre modellen.
|
||||
- MiniMax M2.1 Gratis er tilgængelig på OpenCode i en begrænset periode. Teamet bruger denne tid til at samle feedback og forbedre modellen.
|
||||
- Stor sylteagurk er en stealth-model som er gratis på OpenCode i en begrænset periode. Teamet bruger denne tid til at samle feedback og forbedre modellen.
|
||||
|
||||
<a href={email}>Contact us</a> if you have any questions.
|
||||
<a href={email}>Kontakt os</a> hvis du har spørgsmål.
|
||||
|
||||
---
|
||||
|
||||
### Last inn automatisk
|
||||
### Automatisk opfyldning
|
||||
|
||||
Hvis saldoen din går under $5, vil Zen automatisk laste inn $20 på nytt.
|
||||
Hvis din saldo går under $5, vil Zen automatisk laste $20 ind på nytt.
|
||||
|
||||
Du kan endre beløpet for automatisk påfylling. Du kan også deaktivere automatisk reload helt.
|
||||
Du kan ændre beløbet for automatisk påfyldning. Du kan også deaktivere automatisk genindlæsning helt.
|
||||
|
||||
---
|
||||
|
||||
### Månedlige grenser
|
||||
### Månedlige grænser
|
||||
|
||||
Du kan også angi en månedlig brugsgrense for hele arbeidsområdet og for hver
|
||||
medlem av teamet ditt.
|
||||
Du kan også angive en månedlig brugsgrænse for hele arbejdsområdet og for hvert
|
||||
medlem af dit team.
|
||||
|
||||
La oss for eksempel si at du setter en månedlig brugsgrense til $20, Zen vil ikke bruge
|
||||
mer enn $20 på en måned. Men hvis du har automatisk reload aktivert, kan Zen ende opp
|
||||
belaster deg mer enn $20 hvis saldoen din går under $5.
|
||||
Lad os for eksempel sige, at du sætter en månedlig brugsgrænse til $20, Zen vil ikke bruge
|
||||
mere end $20 på en måned. Men hvis du har automatisk genindlæsning aktiveret, kan Zen ende med
|
||||
at opkræve dig mere end $20, hvis din saldo går under $5.
|
||||
|
||||
---
|
||||
|
||||
## Personvern
|
||||
## Privatliv
|
||||
|
||||
Alle våre modeller er vert i US. Leverandørene våre følger en nulloppbevaringspolicy og bruger ikke dataene dine til modellopplæring, med følgende unntak:
|
||||
Alle vores modeller er hostet i USA. Vores udbydere følger en nul-opbevaringspolitik og bruger ikke dine data til modeltræning, med følgende undtagelser:
|
||||
|
||||
- Big Pickle: I løpet av gratisperioden kan innsamlede data bruges til at forbedre modellen.
|
||||
- GLM 4.7 Gratis: I løpet av gratisperioden kan innsamlede data bruges til at forbedre modellen.
|
||||
- Kimi K2.5 Gratis: I løpet av gratisperioden kan innsamlede data bruges til at forbedre modellen.
|
||||
- MiniMax M2.1 Gratis: I løpet av gratisperioden kan innsamlede data bruges til at forbedre modellen.
|
||||
- OpenAI APIer: Forespørsler oppbevares i 30 dager i samsvar med [OpenAIs datapolicyer](https://platform.openai.com/docs/guides/your-data).
|
||||
- Anthropic APIer: Forespørsler oppbevares i 30 dager i samsvar med [Anthropics datapolicyer](https://docs.anthropic.com/en/docs/claude-code/data-usage).
|
||||
- Stor sylteagurk: I løbet af gratisperioden kan indsamlede data bruges til at forbedre modellen.
|
||||
- GLM 4.7 Gratis: I løbet af gratisperioden kan indsamlede data bruges til at forbedre modellen.
|
||||
- Kimi K2.5 Gratis: I løbet af gratisperioden kan indsamlede data bruges til at forbedre modellen.
|
||||
- MiniMax M2.1 Gratis: I løbet af gratisperioden kan indsamlede data bruges til at forbedre modellen.
|
||||
- OpenAI API'er: Anmodninger opbevares i 30 dage i overensstemmelse med [OpenAIs datapolitikker](https://platform.openai.com/docs/guides/your-data).
|
||||
- Anthropic API'er: Anmodninger opbevares i 30 dage i overensstemmelse med [Anthropics datapolitikker](https://docs.anthropic.com/en/docs/claude-code/data-usage).
|
||||
|
||||
---
|
||||
|
||||
## For lag
|
||||
## For teams
|
||||
|
||||
Zen fungerer også utmerket for team. Du kan invitere lagkamerater, tildele roller, kuratere
|
||||
modellene laget ditt bruger, og mer.
|
||||
Zen fungerer også fremragende for teams. Du kan invitere holdkammerater, tildele roller, kuratere
|
||||
de modeller dit hold bruger, og mere.
|
||||
|
||||
:::note
|
||||
Arbeidsområder er for øyeblikket gratis for team som en del av betaversjonen.
|
||||
Arbejdsområder er i øjeblikket gratis for teams som en del af betaversionen.
|
||||
:::
|
||||
|
||||
Å administrere arbeidsområdet ditt er for øyeblikket gratis for team som en del av betaversjonen. Det blir vi
|
||||
deler mer informasjon om prisene snart.
|
||||
At administrere dit arbejdsområde er i øjeblikket gratis for teams som en del af betaversionen. Vi vil
|
||||
dele mere information om priserne snart.
|
||||
|
||||
---
|
||||
|
||||
### Roller
|
||||
|
||||
Du kan invitere lagkamerater til arbeidsområdet ditt og tildele roller:
|
||||
Du kan invitere holdkammerater til dit arbejdsområde og tildele roller:
|
||||
|
||||
- **Admin**: Administrer modeller, medlemmer, API-nøkler og fakturering
|
||||
- **Medlem**: Administrer kun sine egne API-nøkler
|
||||
- **Admin**: Administrer modeller, medlemmer, API-nøgler og fakturering
|
||||
- **Medlem**: Administrer kun sine egne API-nøgler
|
||||
|
||||
Administratorer kan også sette månedlige forbrugsgrenser for hvert medlem for at holde kostnadene under kontroll.
|
||||
Administratorer kan også sætte månedlige forbrugsgrænser for hvert medlem for at holde omkostningerne under kontrol.
|
||||
|
||||
---
|
||||
|
||||
### Modelltilgang
|
||||
### Modeladgang
|
||||
|
||||
Administratorer kan aktivere eller deaktivere spesifikke modeller for arbeidsområdet. Forespørsler til en deaktivert modell vil returnere en feil.
|
||||
Administratorer kan aktivere eller deaktivere specifikke modeller for arbejdsområdet. Anmodninger til en deaktiveret model vil returnere en fejl.
|
||||
|
||||
Dette er nyttig for tilfeller der du ønsker at deaktivere brugen av en modell som
|
||||
samler inn data.
|
||||
Dette er nyttigt for tilfælde, hvor du ønsker at deaktivere brugen af en model, som
|
||||
samler ind data.
|
||||
|
||||
---
|
||||
|
||||
### Ta med egen nøkkel
|
||||
### Medbring din egen nøgle
|
||||
|
||||
Du kan bruge dine egne OpenAI- eller Anthropic API-nøkler mens du fortsatt har tilgang til andre modeller i Zen.
|
||||
Du kan bruge dine egne OpenAI- eller Anthropic API-nøgler, mens du stadig har adgang til andre modeller i Zen.
|
||||
|
||||
Når du bruger dine egne nøkler, faktureres tokens direkte av leverandøren, ikke av Zen.
|
||||
Når du bruger dine egne nøgler, faktureres tokens direkte af udbyderen, ikke af Zen.
|
||||
|
||||
For eksempel kan organisasjonen din allerede ha en nøkkel for OpenAI eller Anthropic
|
||||
og du vil bruge det i stedet for det Zen gir.
|
||||
For eksempel kan din organisation allerede have en nøgle for OpenAI eller Anthropic
|
||||
og du vil bruge det i stedet for det Zen giver.
|
||||
|
||||
---
|
||||
|
||||
## Mål
|
||||
|
||||
Vi opretet OpenCode Zen for at:
|
||||
Vi oprettede OpenCode Zen for at:
|
||||
|
||||
1. **Benchmark** de beste modellene/leverandørene for kodingsagenter.
|
||||
2. Ha tilgang til alternativene for **høyeste kvalitet** og ikke nedgrader ytelsen eller rute til billigere leverandører.
|
||||
3. Gi videre eventuelle **prisfall** ved at selge til kostpris; så den eneste markeringen er at dekke behandlingsgebyrene våre.
|
||||
4. Ha **ingen låsing** ved at la deg bruge den med en hvilken som helst annen kodeagent. Og la deg alltid bruge en hvilken som helst annen leverandør med OpenCode også.
|
||||
1. **Benchmarke** de bedste modeller/udbydere for kodningsagenter.
|
||||
2. Have adgang til mulighederne for **højeste kvalitet** og ikke nedgradere ydeevnen eller rute til billigere udbydere.
|
||||
3. Give videre eventuelle **prisfald** ved at sælge til kostpris; så den eneste mark-up er for at dække vores behandlingsgebyrer.
|
||||
4. Have **ingen fastlåsning** ved at lade dig bruge den med en hvilken som helst anden kodeagent. Og lade dig altid bruge en hvilken som helst anden udbyder med OpenCode også.
|
||||
|
||||
@@ -13,7 +13,7 @@ ACP ist ein offenes Protokoll, das die Kommunikation zwischen Code-Editoren und
|
||||
|
||||
---
|
||||
|
||||
## Konfigurieren
|
||||
## Konfiguration
|
||||
|
||||
Um OpenCode über ACP zu verwenden, konfigurieren Sie Ihren Editor für die Ausführung des Befehls `opencode acp`.
|
||||
|
||||
@@ -69,7 +69,7 @@ Sie können auch eine Tastenkombination binden, indem Sie Ihren `keymap.json` be
|
||||
|
||||
### JetBrains IDEs
|
||||
|
||||
Fügen Sie zu Ihrem [JetBrains IDE](https://www.jetbrains.com/) acp.json gemäß [documentation](https://www.jetbrains.com/help/ai-assistant/acp.html) hinzu:
|
||||
Fügen Sie zu Ihrem [JetBrains IDE](https://www.jetbrains.com/) acp.json gemäß [Dokumentation](https://www.jetbrains.com/help/ai-assistant/acp.html) hinzu:
|
||||
|
||||
```json title="acp.json"
|
||||
{
|
||||
@@ -140,7 +140,7 @@ Diese Konfiguration richtet CodeCompanion so ein, dass OpenCode als ACP-Agent f
|
||||
|
||||
Wenn Sie Umgebungsvariablen (wie `OPENCODE_API_KEY`) übergeben müssen, finden Sie ausführliche Informationen zu [Configuring Adapters: Environment Variables](https://codecompanion.olimorris.dev/getting-started#setting-an-api-key) in der Dokumentation zu CodeCompanion.nvim.
|
||||
|
||||
## Support
|
||||
## Unterstützung
|
||||
|
||||
OpenCode funktioniert über ACP genauso wie im Terminal. Alle Funktionen werden unterstützt:
|
||||
|
||||
|
||||
@@ -28,25 +28,11 @@ Sie können die **Tabulatortaste** verwenden, um während einer Sitzung zwischen
|
||||
:::
|
||||
|
||||
OpenCode verfügt über zwei integrierte Primäragenten: **Build** und **Plan**. Auch
|
||||
Schauen Sie sich diese unten an.
|
||||
Schauen wir uns diese unten an.
|
||||
|
||||
---
|
||||
|
||||
### Subagenten
|
||||
|
||||
Unteragenten sind spezialisierte Assistenten, die Primäragenten für bestimmte Aufgaben aufrufen können. Sie können sie auch manuell aufrufen, indem Sie sie in Ihren Nachrichten **@erwähnen**.
|
||||
|
||||
OpenCode verfügt über zwei integrierte Subagenten: **General** und **Explore**. Wir werden uns das weiter unten ansehen.
|
||||
|
||||
---
|
||||
|
||||
## Eingebaut
|
||||
|
||||
OpenCode verfügt über zwei integrierte Primäragenten und zwei integrierte Subagenten.
|
||||
|
||||
---
|
||||
|
||||
### Use Build
|
||||
### Build
|
||||
|
||||
_Modus_: `primary`
|
||||
|
||||
@@ -54,7 +40,7 @@ Build ist der **Standard**-Primäragent mit allen aktivierten Tools. Dies ist de
|
||||
|
||||
---
|
||||
|
||||
### Use Plan
|
||||
### Plan
|
||||
|
||||
_Modus_: `primary`
|
||||
|
||||
@@ -68,7 +54,7 @@ Dieser Agent ist nützlich, wenn Sie möchten, dass LLM Code analysiert, Änderu
|
||||
|
||||
---
|
||||
|
||||
### Use General
|
||||
### General
|
||||
|
||||
_Modus_: `subagent`
|
||||
|
||||
@@ -76,7 +62,7 @@ Ein Allzweckagent zur Recherche komplexerer Fragen und zur Ausführung mehrstufi
|
||||
|
||||
---
|
||||
|
||||
### Use Explore
|
||||
### Explore
|
||||
|
||||
_Modus_: `subagent`
|
||||
|
||||
@@ -84,7 +70,7 @@ Ein schneller, schreibgeschützter Agent zum Erkunden von Codebasen. Dateien kö
|
||||
|
||||
---
|
||||
|
||||
### Use Compaction
|
||||
### Compaction
|
||||
|
||||
_Modus_: `primary`
|
||||
|
||||
@@ -92,7 +78,7 @@ Versteckter Systemagent, der lange Kontext in einer kleineren Zusammenfassung ko
|
||||
|
||||
---
|
||||
|
||||
### Use Title
|
||||
### Title
|
||||
|
||||
_Modus_: `primary`
|
||||
|
||||
@@ -100,7 +86,7 @@ Versteckter Systemagent, der kurze Sitzungstitel generiert. Es läuft automatisc
|
||||
|
||||
---
|
||||
|
||||
### Use Summary
|
||||
### Summary
|
||||
|
||||
_Modus_: `primary`
|
||||
|
||||
@@ -121,14 +107,14 @@ Versteckter Systemagent, der Sitzungszusammenfassungen erstellt. Es läuft autom
|
||||
```
|
||||
|
||||
3. **Navigation zwischen Sitzungen**: Wenn Subagenten ihre eigenen untergeordneten Sitzungen erstellen, können Sie zwischen der übergeordneten Sitzung und allen untergeordneten Sitzungen sorgfältig handeln, indem Sie Folgendes verwenden:
|
||||
- **\<Leader>+Rechts** (oder Ihre konfigurierte `session_child_cycle`-Tastenkombination), um vorwärts durch Eltern → Kind1 → Kind2 → ... → Eltern zu blättern
|
||||
- **\<Leader>+Links** (oder Ihre konfigurierte `session_child_cycle_reverse`-Tastenkombination), um rückwärts durch übergeordnetes Element ← untergeordnetes Element1 ← untergeordnetes Element2 ← ... ← übergeordnetes Element zu blättern
|
||||
- **\<Leader>+Rechts** (oder Ihre konfigurierte `session_child_cycle`-Tastenkombination), um vorwärts durch Parent → Child1 → Child2 → ... → Parent zu blättern
|
||||
- **\<Leader>+Links** (oder Ihre konfigurierte `session_child_cycle_reverse`-Tastenkombination), um rückwärts durch Parent ← Child1 ← Child2 ← ... ← Parent zu blättern
|
||||
|
||||
Dadurch können Sie nahtlos zwischen der Hauptkonversation und der spezialisierten Subagentenarbeit wechseln.
|
||||
|
||||
---
|
||||
|
||||
## Konfigurieren
|
||||
## Konfiguration
|
||||
|
||||
Sie können die integrierten Agenten anpassen oder über die Konfiguration eigene erstellen. Agenten können auf zwei Arten konfiguriert werden:
|
||||
|
||||
@@ -210,9 +196,9 @@ Der Name der Markdown-Datei wird zum Agentennamen. Beispielsweise erstellte `rev
|
||||
|
||||
---
|
||||
|
||||
## Options
|
||||
## Optionen
|
||||
|
||||
Schauen Sie sich diese Konfigurationsmöglichkeiten im Detail an.
|
||||
Schauen wir uns diese Konfigurationsmöglichkeiten im Detail an.
|
||||
|
||||
---
|
||||
|
||||
@@ -234,7 +220,7 @@ Dies ist eine **erforderliche** Konfigurationsoption.
|
||||
|
||||
---
|
||||
|
||||
### Temperature
|
||||
### Temperatur
|
||||
|
||||
Steuern Sie die Zufälligkeit und Kreativität der Antworten von LLM mit der `temperature`-Konfiguration.
|
||||
|
||||
@@ -281,7 +267,7 @@ Wenn keine Temperatur angegeben ist, verwendet OpenCode modellspezifische Standa
|
||||
|
||||
---
|
||||
|
||||
### Maximale Schritte
|
||||
### Schritte
|
||||
|
||||
Steuern Sie die maximale Anzahl an Agenteniterationen, die ein Agent durchführen kann, bevor er gezwungen wird, nur mit Text zu antworten. Dadurch können Benutzer, die die Kosten kontrollieren möchten, ein Limit für Agentenaktionen festlegen.
|
||||
|
||||
@@ -307,7 +293,7 @@ Das alte Feld `maxSteps` ist veraltet. Verwenden Sie stattdessen `steps`.
|
||||
|
||||
---
|
||||
|
||||
### Disable
|
||||
### Deaktivieren
|
||||
|
||||
Auf `true` setzen, um den Agenten zu deaktivieren.
|
||||
|
||||
@@ -363,7 +349,7 @@ Die Modell-ID in Ihrer OpenCode-Konfiguration verwendet das Format `provider/mod
|
||||
|
||||
---
|
||||
|
||||
### Tools
|
||||
### Werkzeuge
|
||||
|
||||
Steuern Sie mit der `tools`-Konfiguration, welche Tools in diesem Agent verfügbar sind. Sie können bestimmte Tools aktivieren oder deaktivieren, indem Sie sie auf `true` oder `false` setzen.
|
||||
|
||||
@@ -410,7 +396,7 @@ Sie können Platzhalter auch verwenden, um mehrere Werkzeuge gleichzeitig zu ste
|
||||
|
||||
---
|
||||
|
||||
### Permissions
|
||||
### Berechtigungen
|
||||
|
||||
Sie können Berechtigungen konfigurieren, um zu verwalten, welche Aktionen ein Agent ausführen kann. Derzeit können die Berechtigungen für die Tools `edit`, `bash` und `webfetch` wie folgt konfiguriert werden:
|
||||
|
||||
@@ -522,7 +508,7 @@ Da die letzte übereinstimmende Regel Vorrang hat, setzen Sie zuerst den Platzha
|
||||
|
||||
---
|
||||
|
||||
### Mode
|
||||
### Modus
|
||||
|
||||
Steuern Sie den Modus des Agenten mit der `mode`-Konfiguration. Mit der Option `mode` wird festgelegt, wie der Agent verwendet werden kann.
|
||||
|
||||
@@ -540,7 +526,7 @@ Die Option `mode` kann auf `primary`, `subagent` oder `all` gesetzt werden. Wenn
|
||||
|
||||
---
|
||||
|
||||
### Hidden
|
||||
### Versteckt
|
||||
|
||||
Verstecken Sie einen Subagenten im Autovervollständigungsmenü `@` mit `hidden: true`. Nützlich für interne Subagenten, die nur programmgesteuert von anderen Agenten über das Task-Tool aufgerufen werden sollten.
|
||||
|
||||
@@ -563,7 +549,7 @@ Gilt nur für `mode: subagent`-Agenten.
|
||||
|
||||
---
|
||||
|
||||
### Aufgabenberechtigungen
|
||||
### Task-Berechtigungen
|
||||
|
||||
Steuern Sie, welche Subagenten ein Agent über das Task-Tool mit `permission.task` aufrufen kann. Verwendet Glob-Muster für eine flexible Zuordnung.
|
||||
|
||||
@@ -596,11 +582,11 @@ Benutzer können jeden Subagenten immer direkt über das Autovervollständigungs
|
||||
|
||||
---
|
||||
|
||||
### Color
|
||||
### Farbe
|
||||
|
||||
Passen Sie das visuelle Erscheinungsbild des Agenten im UI mit der Option `color` an. Dies wirkt sich darauf aus, wie der Agent in der Benutzeroberfläche angezeigt wird.
|
||||
|
||||
Verwenden Sie eine gültige Hex-Farbe (e.g., `#FF5733`) oder Themenfarbe: `primary`, `secondary`, `accent`, `success`, `warning`, `error`, `info`.
|
||||
Verwenden Sie eine gültige Hex-Farbe (z. B. `#FF5733`) oder Themenfarbe: `primary`, `secondary`, `accent`, `success`, `warning`, `error`, `info`.
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -635,7 +621,7 @@ Die Werte reichen von 0.0 bis 1.0. Niedrigere Werte sind fokussierter, höhere W
|
||||
|
||||
---
|
||||
|
||||
### Additional
|
||||
### Zusätzliche Optionen
|
||||
|
||||
Alle anderen Optionen, die Sie in Ihrer Agentenkonfiguration angeben, werden als Modelloptionen **direkt** an den Anbieter weitergeleitet. Dadurch können Sie anbieterspezifische Funktionen und Parameter nutzen.
|
||||
|
||||
@@ -662,7 +648,7 @@ Führen Sie `opencode models` aus, um eine Liste der verfügbaren Modelle anzubi
|
||||
|
||||
---
|
||||
|
||||
## Erstellen Sie Agenten
|
||||
## Agenten erstellen
|
||||
|
||||
Mit dem folgenden Befehl können Sie neue Agenten erstellen:
|
||||
|
||||
@@ -692,12 +678,12 @@ Hier sind einige häufige Anwendungsfälle für verschiedene Agenten.
|
||||
|
||||
---
|
||||
|
||||
## Examples
|
||||
## Beispiele
|
||||
|
||||
Hier sind einige Beispielagenten, die für Sie nützlich sein könnten.
|
||||
|
||||
:::tip
|
||||
Haben Sie einen Agenten, den Sie gerne teilen möchten? [Submit a PR](https://github.com/anomalyco/opencode).
|
||||
Haben Sie einen Agenten, den Sie gerne teilen möchten? [Reichen Sie einen PR ein](https://github.com/anomalyco/opencode).
|
||||
:::
|
||||
|
||||
---
|
||||
|
||||
@@ -27,7 +27,7 @@ Starten Sie die Terminalbenutzeroberfläche OpenCode.
|
||||
opencode [project]
|
||||
```
|
||||
|
||||
#### Flags
|
||||
#### Optionen
|
||||
|
||||
| Flag | Kurz | Beschreibung |
|
||||
| ------------ | ---- | ---------------------------------------------------------------------- |
|
||||
@@ -76,7 +76,7 @@ opencode web --port 4096 --hostname 0.0.0.0
|
||||
opencode attach http://10.20.30.40:4096
|
||||
```
|
||||
|
||||
#### Flags
|
||||
#### Optionen
|
||||
|
||||
| Flag | Kurz | Beschreibung |
|
||||
| ----------- | ---- | ----------------------------------------- |
|
||||
@@ -185,7 +185,7 @@ Führen Sie den GitHub-Agenten aus. Dies wird normalerweise in GitHub-Aktionen v
|
||||
opencode github run
|
||||
```
|
||||
|
||||
##### Flags
|
||||
##### Optionen
|
||||
|
||||
| Flag | Beschreibung |
|
||||
| --------- | --------------------------------------------------- |
|
||||
@@ -294,7 +294,7 @@ Sie können optional eine Anbieter-ID übergeben, um Modelle nach diesem Anbiete
|
||||
opencode models anthropic
|
||||
```
|
||||
|
||||
#### Flags
|
||||
#### Optionen
|
||||
|
||||
| Flag | Beschreibung |
|
||||
| ----------- | ------------------------------------------------------------------------------------- |
|
||||
@@ -317,7 +317,7 @@ Führen Sie OpenCode im nicht interaktiven Modus aus, indem Sie direkt eine Eing
|
||||
opencode run [message..]
|
||||
```
|
||||
|
||||
Dies ist nützlich für die Skripterstellung, die Automatisierung oder wenn Sie eine schnelle Antwort wünschen, ohne das vollständige TUI zu starten. Zum Beispiel.
|
||||
Dies ist nützlich für die Skripterstellung, die Automatisierung oder wenn Sie eine schnelle Antwort wünschen, ohne das vollständige TUI zu starten. Zum Beispiel:
|
||||
|
||||
```bash "opencode run"
|
||||
opencode run Explain the use of context in Go
|
||||
@@ -333,11 +333,11 @@ opencode serve
|
||||
opencode run --attach http://localhost:4096 "Explain async/await in JavaScript"
|
||||
```
|
||||
|
||||
#### Flags
|
||||
#### Optionen
|
||||
|
||||
| Flag | Kurz | Beschreibung |
|
||||
| ------------ | ---- | --------------------------------------------------------------------------------------------------- |
|
||||
| `--command` | | Der auszuführende Befehl, Nachricht für Argumente verwenden |
|
||||
| `--command` | | Der auszuführende Befehl, Argumente als Nachricht verwenden |
|
||||
| `--continue` | `-c` | Setzen Sie die letzte Sitzung fort |
|
||||
| `--session` | `-s` | Session-ID zum Fortfahren |
|
||||
| `--fork` | | Sitzung beim Fortsetzen verzweigen (mit `--continue` oder `--session` verwenden) |
|
||||
@@ -362,7 +362,7 @@ opencode serve
|
||||
|
||||
Dadurch wird ein HTTP-Server gestartet, der API-Zugriff auf OpenCode-Funktionalität ohne die TUI-Schnittstelle bietet. Legen Sie `OPENCODE_SERVER_PASSWORD` fest, um die HTTP-Basisauthentifizierung zu aktivieren (Benutzername ist standardmäßig `opencode`).
|
||||
|
||||
#### Flags
|
||||
#### Optionen
|
||||
|
||||
| Flag | Beschreibung |
|
||||
| ------------ | ----------------------------------------------- |
|
||||
@@ -391,7 +391,7 @@ Listen Sie alle OpenCode-Sitzungen auf.
|
||||
opencode session list
|
||||
```
|
||||
|
||||
##### Flags
|
||||
##### Optionen
|
||||
|
||||
| Flag | Kurz | Beschreibung |
|
||||
| ------------- | ---- | ---------------------------------------- |
|
||||
@@ -408,7 +408,7 @@ Zeigen Sie Token-Nutzungs- und Kostenstatistiken für Ihre OpenCode-Sitzungen an
|
||||
opencode stats
|
||||
```
|
||||
|
||||
#### Flags
|
||||
#### Optionen
|
||||
|
||||
| Flag | Beschreibung |
|
||||
| ----------- | ------------------------------------------------------------------------------------------------------------------------------ |
|
||||
@@ -458,7 +458,7 @@ opencode web
|
||||
|
||||
Dadurch wird ein HTTP-Server gestartet und ein Webbrowser geöffnet, um über eine Webschnittstelle auf OpenCode zuzugreifen. Legen Sie `OPENCODE_SERVER_PASSWORD` fest, um die HTTP-Basisauthentifizierung zu aktivieren (Benutzername ist standardmäßig `opencode`).
|
||||
|
||||
#### Flags
|
||||
#### Optionen
|
||||
|
||||
| Flag | Beschreibung |
|
||||
| ------------ | ----------------------------------------------- |
|
||||
@@ -479,7 +479,7 @@ opencode acp
|
||||
|
||||
Dieser Befehl startet einen ACP-Server, der über stdin/stdout unter Verwendung von nd-JSON kommuniziert.
|
||||
|
||||
#### Flags
|
||||
#### Optionen
|
||||
|
||||
| Flag | Beschreibung |
|
||||
| ------------ | -------------------- |
|
||||
@@ -497,7 +497,7 @@ Deinstallieren Sie OpenCode und entfernen Sie alle zugehörigen Dateien.
|
||||
opencode uninstall
|
||||
```
|
||||
|
||||
#### Flags
|
||||
#### Optionen
|
||||
|
||||
| Flag | Kurz | Beschreibung |
|
||||
| --------------- | ---- | --------------------------------------------------- |
|
||||
@@ -516,7 +516,7 @@ Aktualisiert OpenCode auf die neueste Version oder eine bestimmte Version.
|
||||
opencode upgrade [target]
|
||||
```
|
||||
|
||||
Um auf die neueste Version zu aktualisieren.
|
||||
Um auf die neueste Version zu aktualisieren:
|
||||
|
||||
```bash
|
||||
opencode upgrade
|
||||
@@ -528,11 +528,11 @@ Um auf eine bestimmte Version zu aktualisieren.
|
||||
opencode upgrade v0.1.48
|
||||
```
|
||||
|
||||
#### Flags
|
||||
#### Optionen
|
||||
|
||||
| Flag | Kurz | Beschreibung |
|
||||
| ---------- | ---- | --------------------------------------------------------------- |
|
||||
| `--method` | `-m` | Die verwendete Installationsmethode; curl, npm, pnpm, bun, brew |
|
||||
| Flag | Kurz | Beschreibung |
|
||||
| ---------- | ---- | ------------------------------------------------------------------- |
|
||||
| `--method` | `-m` | Die zu verwendende Installationsmethode; curl, npm, pnpm, bun, brew |
|
||||
|
||||
---
|
||||
|
||||
@@ -582,7 +582,7 @@ OpenCode kann mithilfe von Umgebungsvariablen konfiguriert werden.
|
||||
|
||||
---
|
||||
|
||||
### Experimental
|
||||
### Experimentell
|
||||
|
||||
Diese Umgebungsvariablen ermöglichen experimentelle Funktionen, die sich ändern oder entfernt werden können.
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@ Mit benutzerdefinierten Befehlen können Sie eine Eingabeaufforderung angeben, d
|
||||
/my-command
|
||||
```
|
||||
|
||||
Benutzerdefinierte Befehle gibt es zusätzlich zu den integrierten Befehlen wie `/init`, `/undo`, `/redo`, `/share`, `/help`. [Learn more](/docs/tui#commands).
|
||||
Benutzerdefinierte Befehle gibt es zusätzlich zu den integrierten Befehlen wie `/init`, `/undo`, `/redo`, `/share`, `/help`. [Mehr erfahren](/docs/tui#commands).
|
||||
|
||||
---
|
||||
|
||||
@@ -40,7 +40,7 @@ Verwenden Sie den Befehl, indem Sie `/` folgen vom Befehlsnamen eingeben.
|
||||
|
||||
---
|
||||
|
||||
## Konfigurieren
|
||||
## Konfiguration
|
||||
|
||||
Sie können benutzerdefinierte Befehle über die OpenCode-Konfiguration hinzufügen oder indem Sie Markdown-Dateien im Verzeichnis `commands/` erstellen.
|
||||
|
||||
@@ -108,7 +108,7 @@ Die Eingabeaufforderungen für die benutzerdefinierten Befehle unterstützen meh
|
||||
|
||||
---
|
||||
|
||||
### Arguments
|
||||
### Argumente
|
||||
|
||||
Übergeben Sie Argumente an Befehle mithilfe des Platzhalters `$ARGUMENTS`.
|
||||
|
||||
@@ -212,7 +212,7 @@ Der Dateiinhalt wird automatisch in die Eingabeaufforderung einbezogen.
|
||||
|
||||
---
|
||||
|
||||
## Options
|
||||
## Optionen
|
||||
|
||||
Schauen wir uns die Konfigurationsmöglichkeiten im Detail an.
|
||||
|
||||
@@ -236,7 +236,7 @@ Dies ist eine **erforderliche** Konfigurationsoption.
|
||||
|
||||
---
|
||||
|
||||
### Beschreibung
|
||||
### Description
|
||||
|
||||
Verwenden Sie die Option `description`, um eine kurze Beschreibung der Funktion des Befehls bereitzustellen.
|
||||
|
||||
@@ -294,7 +294,7 @@ Dies ist eine **optionale** Konfigurationsoption.
|
||||
|
||||
---
|
||||
|
||||
### Modell
|
||||
### Model
|
||||
|
||||
Verwenden Sie die `model`-Konfiguration, um das Standardmodell für diesen Befehl zu überschreiben.
|
||||
|
||||
@@ -312,9 +312,9 @@ Dies ist eine **optionale** Konfigurationsoption.
|
||||
|
||||
---
|
||||
|
||||
## Eingebaut
|
||||
## Integriert
|
||||
|
||||
OpenCode enthält mehrere integrierte Befehle wie `/init`, `/undo`, `/redo`, `/share`, `/help`; [learn more](/docs/tui#commands).
|
||||
OpenCode enthält mehrere integrierte Befehle wie `/init`, `/undo`, `/redo`, `/share`, `/help`; [mehr erfahren](/docs/tui#commands).
|
||||
|
||||
:::note
|
||||
Benutzerdefinierte Befehle können integrierte Befehle überschreiben.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
title: Konfig
|
||||
title: Konfiguration
|
||||
description: Verwenden Sie die Konfiguration OpenCode JSON.
|
||||
---
|
||||
|
||||
@@ -23,7 +23,7 @@ OpenCode unterstützt die Formate **JSON** und **JSONC** (JSON mit Kommentaren).
|
||||
|
||||
---
|
||||
|
||||
## Locations
|
||||
## Speicherorte
|
||||
|
||||
Sie können Ihre Konfiguration an verschiedenen Orten platzieren und sie haben eine
|
||||
andere Rangfolge.
|
||||
@@ -52,7 +52,7 @@ Konfigurationsquellen werden in dieser Reihenfolge geladen (spätere Quellen üb
|
||||
Dies bedeutet, dass Projektkonfigurationen globale Standardeinstellungen überschreiben können und globale Konfigurationen Remote-Organisationsstandards überschreiben können.
|
||||
|
||||
:::note
|
||||
Die Verzeichnisse `.opencode` und `~/.config/opencode` verwenden **Pluralnamen** für Unterverzeichnisse: `agents/`, `commands/`, `modes/`, `plugins/`, `skills/`, `tools/` und `themes/`. Aus Gründen der Abwärtskompatibilität werden auch einzelne Namen (e.g., `agent/`) unterstützt.
|
||||
Die Verzeichnisse `.opencode` und `~/.config/opencode` verwenden **Pluralnamen** für Unterverzeichnisse: `agents/`, `commands/`, `modes/`, `plugins/`, `skills/`, `tools/` und `themes/`. Aus Gründen der Abwärtskompatibilität werden auch einzelne Namen (z. B. `agent/`) unterstützt.
|
||||
:::
|
||||
|
||||
---
|
||||
@@ -175,7 +175,7 @@ Verfügbare Optionen:
|
||||
- `scroll_speed` – Benutzerdefinierter Scrollgeschwindigkeitsmultiplikator (Standard: `3`, Minimum: `1`). Wird ignoriert, wenn `scroll_acceleration.enabled` gleich `true` ist.
|
||||
- `diff_style` – Steuern Sie das Diff-Rendering. `"auto"` passt sich der Terminalbreite an, `"stacked"` zeigt immer eine einzelne Spalte an.
|
||||
|
||||
[Learn more about using the TUI here](/docs/tui).
|
||||
[Erfahren Sie hier mehr über die Verwendung der TUI](/docs/tui).
|
||||
|
||||
---
|
||||
|
||||
@@ -204,11 +204,11 @@ Verfügbare Optionen:
|
||||
- `mdnsDomain` – Benutzerdefinierter Domänenname für den mDNS-Dienst. Standardmäßig ist `opencode.local`. Nützlich für die Ausführung mehrerer Instanzen im selben Netzwerk.
|
||||
- `cors` – Zusätzliche Ursprünge, um CORS zu ermöglichen, wenn der HTTP-Server von einem browserbasierten Client aus verwendet wird. Die Werte müssen vollständige Ursprünge haben (Schema + Host + optionaler Port), z. B. `https://app.example.com`.
|
||||
|
||||
[Learn more about the server here](/docs/server).
|
||||
[Erfahren Sie hier mehr über den Server](/docs/server).
|
||||
|
||||
---
|
||||
|
||||
### Tools
|
||||
### Werkzeuge
|
||||
|
||||
Sie können die Tools, die ein LLM verwenden kann, über die Option `tools` verwalten.
|
||||
|
||||
@@ -222,11 +222,11 @@ Sie können die Tools, die ein LLM verwenden kann, über die Option `tools` verw
|
||||
}
|
||||
```
|
||||
|
||||
[Learn more about tools here](/docs/tools).
|
||||
[Erfahren Sie hier mehr über Tools](/docs/tools).
|
||||
|
||||
---
|
||||
|
||||
### Models
|
||||
### Modelle
|
||||
|
||||
Sie können die Anbieter und Modelle, die Sie in Ihrer OpenCode-Konfiguration verwenden möchten, über die Optionen `provider`, `model` und `small_model` konfigurieren.
|
||||
|
||||
@@ -260,7 +260,7 @@ Zu den Anbieteroptionen können `timeout` und `setCacheKey` gehören:
|
||||
- `timeout` – Anforderungszeitlimit in Millisekunden (Standard: 300000). Zum Deaktivieren auf `false` setzen.
|
||||
- `setCacheKey` – Stellen Sie sicher, dass immer ein Cache-Schlüssel für den angegebenen Anbieter festgelegt ist.
|
||||
|
||||
Sie können auch [local models](/docs/models#local) konfigurieren. [Learn more](/docs/models).
|
||||
Sie können auch [lokale Modelle](/docs/models#local) konfigurieren. [Mehr erfahren](/docs/models).
|
||||
|
||||
---
|
||||
|
||||
@@ -292,14 +292,14 @@ Amazon Bedrock unterstützt AWS-spezifische Konfigurationen:
|
||||
- `endpoint` – Benutzerdefinierter Endpunkt URL für VPC-Endpunkte. Dies ist ein Alias für die generische Option `baseURL` unter Verwendung der AWS-spezifischen Terminologie. Wenn beide angegeben sind, hat `endpoint` Vorrang.
|
||||
|
||||
:::note
|
||||
Inhabertoken (`AWS_BEARER_TOKEN_BEDROCK` oder `/connect`) haben Vorrang vor der profilbasierten Authentifizierung. Weitere Informationen finden Sie unter [authentication precedence](/docs/providers#authentication-precedence).
|
||||
Inhabertoken (`AWS_BEARER_TOKEN_BEDROCK` oder `/connect`) haben Vorrang vor der profilbasierten Authentifizierung. Weitere Informationen finden Sie unter [Authentifizierungs-Rangfolge](/docs/providers#authentication-precedence).
|
||||
:::
|
||||
|
||||
[Learn more about Amazon Bedrock configuration](/docs/providers#amazon-bedrock).
|
||||
[Erfahren Sie mehr über die Amazon Bedrock-Konfiguration](/docs/providers#amazon-bedrock).
|
||||
|
||||
---
|
||||
|
||||
### Themes
|
||||
### Themen
|
||||
|
||||
Sie können das Thema, das Sie in Ihrer OpenCode-Konfiguration verwenden möchten, über die Option `theme` konfigurieren.
|
||||
|
||||
@@ -310,11 +310,11 @@ Sie können das Thema, das Sie in Ihrer OpenCode-Konfiguration verwenden möchte
|
||||
}
|
||||
```
|
||||
|
||||
[Learn more here](/docs/themes).
|
||||
[Mehr erfahren](/docs/themes).
|
||||
|
||||
---
|
||||
|
||||
### Agents
|
||||
### Agenten
|
||||
|
||||
Über die Option `agent` können Sie spezielle Agenten für bestimmte Aufgaben konfigurieren.
|
||||
|
||||
@@ -336,7 +336,7 @@ Sie können das Thema, das Sie in Ihrer OpenCode-Konfiguration verwenden möchte
|
||||
}
|
||||
```
|
||||
|
||||
Sie können Agenten auch mithilfe von Markdown-Dateien in `~/.config/opencode/agents/` oder `.opencode/agents/` definieren. [Learn more here](/docs/agents).
|
||||
Sie können Agenten auch mithilfe von Markdown-Dateien in `~/.config/opencode/agents/` oder `.opencode/agents/` definieren. [Mehr erfahren](/docs/agents).
|
||||
|
||||
---
|
||||
|
||||
@@ -357,7 +357,7 @@ Diese Einstellung gilt für alle Schnittstellen: TUI, CLI (`opencode run`), Desk
|
||||
|
||||
---
|
||||
|
||||
### Sharing
|
||||
### Teilen
|
||||
|
||||
Sie können die Funktion [share](/docs/share) über die Option `share` konfigurieren.
|
||||
|
||||
@@ -400,11 +400,11 @@ Sie können benutzerdefinierte Befehle für sich wiederholende Aufgaben über di
|
||||
}
|
||||
```
|
||||
|
||||
Sie können Befehle auch mithilfe von Markdown-Dateien in `~/.config/opencode/commands/` oder `.opencode/commands/` definieren. [Learn more here](/docs/commands).
|
||||
Sie können Befehle auch mithilfe von Markdown-Dateien in `~/.config/opencode/commands/` oder `.opencode/commands/` definieren. [Mehr erfahren](/docs/commands).
|
||||
|
||||
---
|
||||
|
||||
### Keybinds
|
||||
### Tastenkombinationen
|
||||
|
||||
Sie können Ihre Tastenkombinationen über die Option `keybinds` anpassen.
|
||||
|
||||
@@ -415,11 +415,11 @@ Sie können Ihre Tastenkombinationen über die Option `keybinds` anpassen.
|
||||
}
|
||||
```
|
||||
|
||||
[Learn more here](/docs/keybinds).
|
||||
[Mehr erfahren](/docs/keybinds).
|
||||
|
||||
---
|
||||
|
||||
### Autoupdate
|
||||
### Automatisches Update
|
||||
|
||||
OpenCode lädt beim Start automatisch alle neuen Updates herunter. Sie können dies mit der Option `autoupdate` deaktivieren.
|
||||
|
||||
@@ -435,7 +435,7 @@ Beachten Sie, dass dies nur funktioniert, wenn es nicht mit einem Paketmanager w
|
||||
|
||||
---
|
||||
|
||||
### Formatters
|
||||
### Formatierer
|
||||
|
||||
Sie können Codeformatierer über die Option `formatter` konfigurieren.
|
||||
|
||||
@@ -457,11 +457,11 @@ Sie können Codeformatierer über die Option `formatter` konfigurieren.
|
||||
}
|
||||
```
|
||||
|
||||
[Learn more about formatters here](/docs/formatters).
|
||||
[Erfahren Sie hier mehr über Formatierer](/docs/formatters).
|
||||
|
||||
---
|
||||
|
||||
### Permissions
|
||||
### Berechtigungen
|
||||
|
||||
OpenCode erlaubt standardmäßig alle Vorgänge, ohne dass eine ausdrückliche Genehmigung erforderlich ist. Sie können dies mit der Option `permission` ändern.
|
||||
|
||||
@@ -477,11 +477,11 @@ Um beispielsweise sicherzustellen, dass die Tools `edit` und `bash` eine Benutze
|
||||
}
|
||||
```
|
||||
|
||||
[Learn more about permissions here](/docs/permissions).
|
||||
[Erfahren Sie hier mehr über Berechtigungen](/docs/permissions).
|
||||
|
||||
---
|
||||
|
||||
### Compaction
|
||||
### Komprimierung
|
||||
|
||||
Sie können das Verhalten der Kontextkomprimierung über die Option `compaction` steuern.
|
||||
|
||||
@@ -500,7 +500,7 @@ Sie können das Verhalten der Kontextkomprimierung über die Option `compaction`
|
||||
|
||||
---
|
||||
|
||||
### Watcher
|
||||
### Dateiüberwachung
|
||||
|
||||
Sie können Datei-Watcher-Ignoriermuster über die Option `watcher` konfigurieren.
|
||||
|
||||
@@ -517,7 +517,7 @@ Muster folgen der Glob-Syntax. Verwenden Sie diese Option, um verrauschte Verzei
|
||||
|
||||
---
|
||||
|
||||
### MCP Server
|
||||
### MCP
|
||||
|
||||
Sie können den MCP-Server, den Sie verwenden möchten, über die Option `mcp` konfigurieren.
|
||||
|
||||
@@ -528,7 +528,7 @@ Sie können den MCP-Server, den Sie verwenden möchten, über die Option `mcp` k
|
||||
}
|
||||
```
|
||||
|
||||
[Learn more here](/docs/mcp-servers).
|
||||
[Mehr erfahren](/docs/mcp-servers).
|
||||
|
||||
---
|
||||
|
||||
@@ -545,11 +545,11 @@ Platzieren Sie Ihre Plugin-Dateien in `.opencode/plugins/` oder `~/.config/openc
|
||||
}
|
||||
```
|
||||
|
||||
[Learn more here](/docs/plugins).
|
||||
[Mehr erfahren](/docs/plugins).
|
||||
|
||||
---
|
||||
|
||||
### Instructions
|
||||
### Anweisungen
|
||||
|
||||
Sie können die Anweisungen für das von Ihnen verwendete Modell über die Option `instructions` konfigurieren.
|
||||
|
||||
@@ -560,8 +560,7 @@ Sie können die Anweisungen für das von Ihnen verwendete Modell über die Optio
|
||||
}
|
||||
```
|
||||
|
||||
Dies erfordert eine Reihe von Pfaden und Glob-Mustern zu Anweisungsdateien. [Erfahren Sie mehr
|
||||
über Regeln hier](/docs/rules).
|
||||
Dies erfordert eine Reihe von Pfaden und Glob-Mustern zu Anweisungsdateien. [Erfahren Sie hier mehr über Regeln](/docs/rules).
|
||||
|
||||
---
|
||||
|
||||
@@ -609,7 +608,7 @@ Wenn ein Anbieter sowohl in `enabled_providers` als auch in `disabled_providers`
|
||||
|
||||
---
|
||||
|
||||
### Experimental
|
||||
### Experimentell
|
||||
|
||||
Der Schlüssel `experimental` enthält Optionen, die sich in der aktiven Entwicklung befinden.
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user