Skip to content

Commit 2daec5d

Browse files
committed
rename everything except domain+repo: kode → odek
Binary: odek Config dir: ~/.odek/ Config file: odek.json Env vars: ODEK_* Go package: package odek Docker tag: odek-sandbox Dockerfile: Dockerfile.odek YAML frontmatter: odek: key System prompt: You are odek... Preserved: - Domain: kode.21no.de - Repo: github.com/BackendStack21/kode - Module path: github.com/BackendStack21/kode/...
1 parent f38998e commit 2daec5d

61 files changed

Lines changed: 599 additions & 599 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/release.yml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -25,13 +25,13 @@ jobs:
2525
CGO_ENABLED: "0"
2626
run: |
2727
TAG=${GITHUB_REF#refs/tags/}
28-
go build -ldflags "-s -w -X main.version=${TAG}" -o kode-${{ matrix.goos }}-${{ matrix.goarch }} ./cmd/kode
28+
go build -ldflags "-s -w -X main.version=${TAG}" -o odek-${{ matrix.goos }}-${{ matrix.goarch }} ./cmd/odek
2929
3030
- name: upload artifact
3131
uses: actions/upload-artifact@v4
3232
with:
33-
name: kode-${{ matrix.goos }}-${{ matrix.goarch }}
34-
path: kode-${{ matrix.goos }}-${{ matrix.goarch }}
33+
name: odek-${{ matrix.goos }}-${{ matrix.goarch }}
34+
path: odek-${{ matrix.goos }}-${{ matrix.goarch }}
3535

3636
release:
3737
needs: build
@@ -41,19 +41,19 @@ jobs:
4141
steps:
4242
- uses: actions/download-artifact@v4
4343
with:
44-
pattern: kode-*
44+
pattern: odek-*
4545
merge-multiple: true
4646

4747
- name: checksums
48-
run: sha256sum kode-* > checksums.txt
48+
run: sha256sum odek-* > checksums.txt
4949

5050
- name: release
5151
uses: softprops/action-gh-release@v2
5252
with:
5353
files: |
54-
kode-linux-amd64
55-
kode-linux-arm64
56-
kode-darwin-amd64
57-
kode-darwin-arm64
54+
odek-linux-amd64
55+
odek-linux-arm64
56+
odek-darwin-amd64
57+
odek-darwin-arm64
5858
checksums.txt
5959
generate_release_notes: true

.github/workflows/test.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,10 @@ jobs:
1717
go-version: "1.24"
1818

1919
- name: build
20-
run: go build -o /tmp/kode-test github.com/BackendStack21/kode/cmd/kode && chmod +x /tmp/kode-test
20+
run: go build -o /tmp/odek-test github.com/BackendStack21/kode/cmd/kode && chmod +x /tmp/odek-test
2121

2222
- name: test
23-
run: KODE_BINARY=/tmp/kode-test go test ./... -race -coverprofile=coverage.out -covermode=atomic -count=1
23+
run: ODEK_BINARY=/tmp/odek-test go test ./... -race -coverprofile=coverage.out -covermode=atomic -count=1
2424

2525
- name: coverage
2626
run: go tool cover -func=coverage.out

README.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
# kode
1+
# odek
22

33
**The fastest, minimal, zero-dependency Go autonomous agent runtime.**
44

55
One binary. One loop. Zero frameworks. ReAct (Reasoning + Acting) — think, therefore act.
66

77
```bash
88
# Install
9-
go install github.com/BackendStack21/kode/cmd/kode@latest
9+
go install github.com/BackendStack21/kode/cmd/odek@latest
1010

1111
# Use (set DEEPSEEK_API_KEY or OPENAI_API_KEY)
1212
export DEEPSEEK_API_KEY=sk-...
@@ -16,11 +16,11 @@ odek run "How many lines in go.mod?"
1616

1717
---
1818

19-
## Why kode
19+
## Why odek
2020

21-
kode is not a framework. It's a **runtime** — the smallest possible surface area between an LLM and your tools.
21+
odek is not a framework. It's a **runtime** — the smallest possible surface area between an LLM and your tools.
2222

23-
| | kode | Python agents (LangChain, CrewAI, etc.) |
23+
| | odek | Python agents (LangChain, CrewAI, etc.) |
2424
|---|---|---|
2525
| Dependencies | **Zero.** stdlib only | 200+ packages |
2626
| Binary size | ~5 MB static | 50-200 MB with venv |
@@ -45,10 +45,10 @@ Skill-matched `SKILL.md` files load on-demand. Auto-learns from patterns every s
4545
Three tiers: **facts** (agent-managed durable entries), **session buffer** (auto-appended turn summaries), **episodes** (LLM-extracted knowledge from past sessions). Merge-on-write via go-vector RandomProjections — cosine >0.7 auto-merges, <0.3 auto-adds. Saves ~80% LLM calls. [docs/MEMORY.md](docs/MEMORY.md)
4646

4747
### 🔧 Multi-Turn Sessions
48-
Save, resume, list, trim, and clean up conversations. Sessions persist as JSON in `~/.kode/sessions/`. Continue any session with `odek continue`. [docs/SESSIONS.md](docs/SESSIONS.md)
48+
Save, resume, list, trim, and clean up conversations. Sessions persist as JSON in `~/.odek/sessions/`. Continue any session with `odek continue`. [docs/SESSIONS.md](docs/SESSIONS.md)
4949

5050
### 🏗️ Layerable Config
51-
Four-layer priority chain: `global (~/kode/config.json)``project (./odek.json)``KODE_*` env vars → CLI flags. `${VAR}` substitution in config files. [docs/CONFIG.md](docs/CONFIG.md)
51+
Four-layer priority chain: `global (~/.odek/config.json)``project (./odek.json)``ODEK_*` env vars → CLI flags. `${VAR}` substitution in config files. [docs/CONFIG.md](docs/CONFIG.md)
5252

5353
### 🔌 LLM-Agnostic
5454
Any OpenAI-compatible endpoint: Deepseek, OpenAI, Anthropic, Ollama, vLLM, Groq, Together, Fireworks — anything that speaks `/chat/completions`. Per-model profiles for thinking depth and context windows. [docs/PROVIDERS.md](docs/PROVIDERS.md)
@@ -57,7 +57,7 @@ Any OpenAI-compatible endpoint: Deepseek, OpenAI, Anthropic, Ollama, vLLM, Groq,
5757
`odek serve` — browser-based agent with `@` resource completion (`@file.go`, `@sess:abc123`), WebSocket streaming, and a full IDE-style console. [docs/WEBUI.md](docs/WEBUI.md)
5858

5959
### 🔗 MCP (Two-Way)
60-
**Server** (`odek mcp`) — expose kode's native tools (shell, read/write/search files, patch, browser) to Claude Code, Cursor, and any MCP client. **Client** (`mcp_servers` config) — kode connects to external MCP servers (Playwright, Fetch, GitHub, SQLite, etc.) and makes their tools available to the agent as `<server>__<tool>`. Both directions in one binary. [docs/MCP.md](docs/MCP.md)
60+
**Server** (`odek mcp`) — expose odek's native tools (shell, read/write/search files, patch, browser) to Claude Code, Cursor, and any MCP client. **Client** (`mcp_servers` config) — odek connects to external MCP servers (Playwright, Fetch, GitHub, SQLite, etc.) and makes their tools available to the agent as `<server>__<tool>`. Both directions in one binary. [docs/MCP.md](docs/MCP.md)
6161

6262
### 🔍 Native Tools
6363
Built-in `read_file`, `write_file`, `search_files`, `patch`, `shell`, and `browser` tools. All gated by a unified security layer (`dangerous` config) — classify operations as `allow` / `deny` / `prompt` per risk class. No third-party dependencies. [docs/SECURITY.md](docs/SECURITY.md)
@@ -156,11 +156,11 @@ odek repl
156156
```go
157157
import "github.com/BackendStack21/kode"
158158

159-
agent, err := kode.New(kode.Config{
159+
agent, err := odek.New(odek.Config{
160160
Model: "deepseek-chat",
161161
APIKey: os.Getenv("DEEPSEEK_API_KEY"),
162162
MaxIterations: 30,
163-
Tools: []kode.Tool{&myCustomTool{}},
163+
Tools: []odek.Tool{&myCustomTool{}},
164164
SystemMessage: "You are an expert at refactoring Go code.",
165165
})
166166
defer agent.Close()

cmd/odek/browser_tool.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@ func (t *browserTool) doNavigate(rawURL string) (string, error) {
171171
if err != nil {
172172
return jsonError(fmt.Sprintf("cannot create request: %v", err))
173173
}
174-
req.Header.Set("User-Agent", "kode-browser/0.1")
174+
req.Header.Set("User-Agent", "odek-browser/0.1")
175175
req.Header.Set("Accept", "text/html,application/xhtml+xml")
176176

177177
// Security: classify and check browser operation

0 commit comments

Comments
 (0)