Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Showing 104 changed files with 262 additions and 241 deletions.
| @@ -0,0 +1,21 @@ | ||
| 1 | + MIT License | |
| 2 | + | |
| 3 | + Copyright (c) 2026 joni | |
| 4 | + | |
| 5 | + Permission is hereby granted, free of charge, to any person obtaining a copy | |
| 6 | + of this software and associated documentation files (the "Software"), to deal | |
| 7 | + in the Software without restriction, including without limitation the rights | |
| 8 | + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | |
| 9 | + copies of the Software, and to permit persons to whom the Software is | |
| 10 | + furnished to do so, subject to the following conditions: | |
| 11 | + | |
| 12 | + The above copyright notice and this permission notice shall be included in all | |
| 13 | + copies or substantial portions of the Software. | |
| 14 | + | |
| 15 | + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | |
| 16 | + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | |
| 17 | + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | |
| 18 | + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | |
| 19 | + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | |
| 20 | + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | |
| 21 | + SOFTWARE. | |
| @@ -23,13 +23,13 @@ import ( | ||
| 23 | 23 | "strings" |
| 24 | 24 | "time" |
| 25 | 25 | |
| 26 | - "codey/internal/acp" | |
| 27 | - "codey/internal/agent" | |
| 28 | - "codey/internal/llm" | |
| 29 | - "codey/internal/metrics" | |
| 30 | - "codey/internal/serve" | |
| 31 | - "codey/internal/subagent" | |
| 32 | - "codey/internal/tools" | |
| 26 | + "github.com/johannSo/codey/internal/acp" | |
| 27 | + "github.com/johannSo/codey/internal/agent" | |
| 28 | + "github.com/johannSo/codey/internal/llm" | |
| 29 | + "github.com/johannSo/codey/internal/metrics" | |
| 30 | + "github.com/johannSo/codey/internal/serve" | |
| 31 | + "github.com/johannSo/codey/internal/subagent" | |
| 32 | + "github.com/johannSo/codey/internal/tools" | |
| 33 | 33 | ) |
| 34 | 34 | |
| 35 | 35 | // invKind is which of the four things this command line is. |
| @@ -9,8 +9,8 @@ import ( | ||
| 9 | 9 | "strings" |
| 10 | 10 | "testing" |
| 11 | 11 | |
| 12 | - "codey/internal/llm" | |
| 13 | - "codey/internal/serve" | |
| 12 | + "github.com/johannSo/codey/internal/llm" | |
| 13 | + "github.com/johannSo/codey/internal/serve" | |
| 14 | 14 | ) |
| 15 | 15 | |
| 16 | 16 | // t3VersionPattern is the regular expression T3 Code parses `--version` with. |
| @@ -6,7 +6,7 @@ import ( | ||
| 6 | 6 | "path/filepath" |
| 7 | 7 | "testing" |
| 8 | 8 | |
| 9 | - "codey/internal/llm" | |
| 9 | + "github.com/johannSo/codey/internal/llm" | |
| 10 | 10 | ) |
| 11 | 11 | |
| 12 | 12 | // fakeHome writes a credentials file with a token that is not expired. |
| @@ -14,25 +14,25 @@ import ( | ||
| 14 | 14 | "sync/atomic" |
| 15 | 15 | "time" |
| 16 | 16 | |
| 17 | - "codey/internal/agent" | |
| 18 | - "codey/internal/approval" | |
| 19 | - "codey/internal/ask" | |
| 20 | - "codey/internal/claudecode" | |
| 21 | - "codey/internal/config" | |
| 22 | - "codey/internal/diag" | |
| 23 | - "codey/internal/herdr" | |
| 24 | - "codey/internal/hooks" | |
| 25 | - "codey/internal/llm" | |
| 26 | - "codey/internal/mcp" | |
| 27 | - "codey/internal/metrics" | |
| 28 | - "codey/internal/serve" | |
| 29 | - "codey/internal/skills" | |
| 30 | - "codey/internal/statedir" | |
| 31 | - "codey/internal/subagent" | |
| 32 | - "codey/internal/tools" | |
| 33 | - "codey/internal/tui" | |
| 34 | - "codey/internal/ui" | |
| 35 | - "codey/internal/websearch" | |
| 17 | + "github.com/johannSo/codey/internal/agent" | |
| 18 | + "github.com/johannSo/codey/internal/approval" | |
| 19 | + "github.com/johannSo/codey/internal/ask" | |
| 20 | + "github.com/johannSo/codey/internal/claudecode" | |
| 21 | + "github.com/johannSo/codey/internal/config" | |
| 22 | + "github.com/johannSo/codey/internal/diag" | |
| 23 | + "github.com/johannSo/codey/internal/herdr" | |
| 24 | + "github.com/johannSo/codey/internal/hooks" | |
| 25 | + "github.com/johannSo/codey/internal/llm" | |
| 26 | + "github.com/johannSo/codey/internal/mcp" | |
| 27 | + "github.com/johannSo/codey/internal/metrics" | |
| 28 | + "github.com/johannSo/codey/internal/serve" | |
| 29 | + "github.com/johannSo/codey/internal/skills" | |
| 30 | + "github.com/johannSo/codey/internal/statedir" | |
| 31 | + "github.com/johannSo/codey/internal/subagent" | |
| 32 | + "github.com/johannSo/codey/internal/tools" | |
| 33 | + "github.com/johannSo/codey/internal/tui" | |
| 34 | + "github.com/johannSo/codey/internal/ui" | |
| 35 | + "github.com/johannSo/codey/internal/websearch" | |
| 36 | 36 | ) |
| 37 | 37 | |
| 38 | 38 | // version is what the TUI's welcome block reports. It is a constant rather |
| @@ -19,11 +19,11 @@ import ( | ||
| 19 | 19 | "sync" |
| 20 | 20 | "time" |
| 21 | 21 | |
| 22 | - "codey/internal/agent" | |
| 23 | - "codey/internal/approval" | |
| 24 | - "codey/internal/llm" | |
| 25 | - "codey/internal/metrics" | |
| 26 | - "codey/internal/tools" | |
| 22 | + "github.com/johannSo/codey/internal/agent" | |
| 23 | + "github.com/johannSo/codey/internal/approval" | |
| 24 | + "github.com/johannSo/codey/internal/llm" | |
| 25 | + "github.com/johannSo/codey/internal/metrics" | |
| 26 | + "github.com/johannSo/codey/internal/tools" | |
| 27 | 27 | ) |
| 28 | 28 | |
| 29 | 29 | // Task is one directory under evals/tasks. |
| @@ -1,4 +1,4 @@ | ||
| 1 | - module codey | |
| 1 | + module github.com/johannSo/codey | |
| 2 | 2 | |
| 3 | 3 | go 1.26.8 |
| 4 | 4 | |
| @@ -6,8 +6,8 @@ import ( | ||
| 6 | 6 | "strconv" |
| 7 | 7 | "strings" |
| 8 | 8 | |
| 9 | - "codey/internal/llm" | |
| 10 | - "codey/internal/metrics" | |
| 9 | + "github.com/johannSo/codey/internal/llm" | |
| 10 | + "github.com/johannSo/codey/internal/metrics" | |
| 11 | 11 | ) |
| 12 | 12 | |
| 13 | 13 | // metricsCompaction records a compaction so its effect on later turns is |
| @@ -10,7 +10,7 @@ import ( | ||
| 10 | 10 | "strings" |
| 11 | 11 | "testing" |
| 12 | 12 | |
| 13 | - "codey/internal/llm" | |
| 13 | + "github.com/johannSo/codey/internal/llm" | |
| 14 | 14 | ) |
| 15 | 15 | |
| 16 | 16 | func TestCacheBreakpoints(t *testing.T) { |
| @@ -10,7 +10,7 @@ import ( | ||
| 10 | 10 | "testing" |
| 11 | 11 | "time" |
| 12 | 12 | |
| 13 | - "codey/internal/hooks" | |
| 13 | + "github.com/johannSo/codey/internal/hooks" | |
| 14 | 14 | ) |
| 15 | 15 | |
| 16 | 16 | // recorder keeps every payload fired at it. It locks because Paused fires from |
| @@ -1,6 +1,6 @@ | ||
| 1 | 1 | package agent |
| 2 | 2 | |
| 3 | - import "codey/internal/llm" | |
| 3 | + import "github.com/johannSo/codey/internal/llm" | |
| 4 | 4 | |
| 5 | 5 | // interruptedResult is what a tool call that never finished sends back. It is |
| 6 | 6 | // an error result rather than empty text because that is what happened, and |
| @@ -9,9 +9,9 @@ import ( | ||
| 9 | 9 | "testing" |
| 10 | 10 | "time" |
| 11 | 11 | |
| 12 | - "codey/internal/llm" | |
| 13 | - "codey/internal/metrics" | |
| 14 | - "codey/internal/tools" | |
| 12 | + "github.com/johannSo/codey/internal/llm" | |
| 13 | + "github.com/johannSo/codey/internal/metrics" | |
| 14 | + "github.com/johannSo/codey/internal/tools" | |
| 15 | 15 | ) |
| 16 | 16 | |
| 17 | 17 | // newInterruptibleAgent wires an agent whose "wait" tool blocks until the |
| @@ -9,11 +9,11 @@ import ( | ||
| 9 | 9 | "strings" |
| 10 | 10 | "sync" |
| 11 | 11 | |
| 12 | - "codey/internal/hooks" | |
| 13 | - "codey/internal/llm" | |
| 14 | - "codey/internal/metrics" | |
| 15 | - "codey/internal/skills" | |
| 16 | - "codey/internal/tools" | |
| 12 | + "github.com/johannSo/codey/internal/hooks" | |
| 13 | + "github.com/johannSo/codey/internal/llm" | |
| 14 | + "github.com/johannSo/codey/internal/metrics" | |
| 15 | + "github.com/johannSo/codey/internal/skills" | |
| 16 | + "github.com/johannSo/codey/internal/tools" | |
| 17 | 17 | ) |
| 18 | 18 | |
| 19 | 19 | // NoTurnLimit is what a non-positive MaxTurns means: the loop runs until the |
| @@ -18,10 +18,10 @@ import ( | ||
| 18 | 18 | "testing" |
| 19 | 19 | "time" |
| 20 | 20 | |
| 21 | - "codey/internal/llm" | |
| 22 | - "codey/internal/metrics" | |
| 23 | - "codey/internal/skills" | |
| 24 | - "codey/internal/tools" | |
| 21 | + "github.com/johannSo/codey/internal/llm" | |
| 22 | + "github.com/johannSo/codey/internal/metrics" | |
| 23 | + "github.com/johannSo/codey/internal/skills" | |
| 24 | + "github.com/johannSo/codey/internal/tools" | |
| 25 | 25 | ) |
| 26 | 26 | |
| 27 | 27 | // fakeAPI serves a scripted sequence of responses and records every request |
| @@ -14,9 +14,9 @@ import ( | ||
| 14 | 14 | "testing" |
| 15 | 15 | "time" |
| 16 | 16 | |
| 17 | - "codey/internal/llm" | |
| 18 | - "codey/internal/metrics" | |
| 19 | - "codey/internal/tools" | |
| 17 | + "github.com/johannSo/codey/internal/llm" | |
| 18 | + "github.com/johannSo/codey/internal/metrics" | |
| 19 | + "github.com/johannSo/codey/internal/tools" | |
| 20 | 20 | ) |
| 21 | 21 | |
| 22 | 22 | // settle is how long a test waits before concluding that nothing is going to |
| @@ -10,8 +10,8 @@ import ( | ||
| 10 | 10 | "strings" |
| 11 | 11 | "time" |
| 12 | 12 | |
| 13 | - "codey/internal/llm" | |
| 14 | - "codey/internal/statedir" | |
| 13 | + "github.com/johannSo/codey/internal/llm" | |
| 14 | + "github.com/johannSo/codey/internal/statedir" | |
| 15 | 15 | ) |
| 16 | 16 | |
| 17 | 17 | // Session is a conversation saved to disk so --resume can pick it up. |
| @@ -10,7 +10,7 @@ import ( | ||
| 10 | 10 | "testing" |
| 11 | 11 | "time" |
| 12 | 12 | |
| 13 | - "codey/internal/llm" | |
| 13 | + "github.com/johannSo/codey/internal/llm" | |
| 14 | 14 | ) |
| 15 | 15 | |
| 16 | 16 | func TestSaveAndResumeSession(t *testing.T) { |
| @@ -10,8 +10,8 @@ import ( | ||
| 10 | 10 | "sync" |
| 11 | 11 | "time" |
| 12 | 12 | |
| 13 | - "codey/internal/llm" | |
| 14 | - "codey/internal/tools" | |
| 13 | + "github.com/johannSo/codey/internal/llm" | |
| 14 | + "github.com/johannSo/codey/internal/tools" | |
| 15 | 15 | ) |
| 16 | 16 | |
| 17 | 17 | // ReadRecord lives in tools so the edit tool can query the tracker without |
| @@ -7,7 +7,7 @@ import ( | ||
| 7 | 7 | "strings" |
| 8 | 8 | "testing" |
| 9 | 9 | |
| 10 | - "codey/internal/hooks" | |
| 10 | + "github.com/johannSo/codey/internal/hooks" | |
| 11 | 11 | ) |
| 12 | 12 | |
| 13 | 13 | // recordHooks attaches a recorder and returns the payloads it will fill. |
| @@ -8,7 +8,7 @@ import ( | ||
| 8 | 8 | "strings" |
| 9 | 9 | "sync" |
| 10 | 10 | |
| 11 | - "codey/internal/hooks" | |
| 11 | + "github.com/johannSo/codey/internal/hooks" | |
| 12 | 12 | ) |
| 13 | 13 | |
| 14 | 14 | // Decision is the outcome of an approval prompt. |
| @@ -21,7 +21,7 @@ import ( | ||
| 21 | 21 | "strings" |
| 22 | 22 | "sync" |
| 23 | 23 | |
| 24 | - "codey/internal/hooks" | |
| 24 | + "github.com/johannSo/codey/internal/hooks" | |
| 25 | 25 | ) |
| 26 | 26 | |
| 27 | 27 | // The limits are the picker's, not the model's: four options fit on a screen |
| @@ -6,7 +6,7 @@ import ( | ||
| 6 | 6 | "strings" |
| 7 | 7 | "testing" |
| 8 | 8 | |
| 9 | - "codey/internal/hooks" | |
| 9 | + "github.com/johannSo/codey/internal/hooks" | |
| 10 | 10 | ) |
| 11 | 11 | |
| 12 | 12 | // recordHooks attaches a recorder and returns the payloads it will fill. |
| @@ -5,7 +5,7 @@ import ( | ||
| 5 | 5 | "errors" |
| 6 | 6 | "fmt" |
| 7 | 7 | |
| 8 | - "codey/internal/tools" | |
| 8 | + "github.com/johannSo/codey/internal/tools" | |
| 9 | 9 | ) |
| 10 | 10 | |
| 11 | 11 | // Name is the tool the model calls. It is snake_case like every other tool |
| @@ -24,7 +24,7 @@ import ( | ||
| 24 | 24 | "strconv" |
| 25 | 25 | "strings" |
| 26 | 26 | |
| 27 | - "codey/internal/llm" | |
| 27 | + "github.com/johannSo/codey/internal/llm" | |
| 28 | 28 | ) |
| 29 | 29 | |
| 30 | 30 | // MaxBytes caps one image. The API refuses anything over 5MB, and it counts |
| @@ -12,7 +12,7 @@ import ( | ||
| 12 | 12 | "strings" |
| 13 | 13 | "testing" |
| 14 | 14 | |
| 15 | - "codey/internal/llm" | |
| 15 | + "github.com/johannSo/codey/internal/llm" | |
| 16 | 16 | ) |
| 17 | 17 | |
| 18 | 18 | // tinyPNG is a real one-pixel PNG, encoded rather than pasted in as a literal |
| @@ -18,8 +18,8 @@ import ( | ||
| 18 | 18 | "slices" |
| 19 | 19 | "strings" |
| 20 | 20 | |
| 21 | - "codey/internal/llm" | |
| 22 | - "codey/internal/websearch" | |
| 21 | + "github.com/johannSo/codey/internal/llm" | |
| 22 | + "github.com/johannSo/codey/internal/websearch" | |
| 23 | 23 | ) |
| 24 | 24 | |
| 25 | 25 | // Filename is the config's name inside Codey's config directory. |
| @@ -1,7 +1,7 @@ | ||
| 1 | 1 | package config |
| 2 | 2 | |
| 3 | 3 | import ( |
| 4 | - "codey/internal/llm" | |
| 4 | + "github.com/johannSo/codey/internal/llm" | |
| 5 | 5 | "os" |
| 6 | 6 | "path/filepath" |
| 7 | 7 | "strings" |
| @@ -32,7 +32,7 @@ import ( | ||
| 32 | 32 | "sync" |
| 33 | 33 | "time" |
| 34 | 34 | |
| 35 | - "codey/internal/hooks" | |
| 35 | + "github.com/johannSo/codey/internal/hooks" | |
| 36 | 36 | ) |
| 37 | 37 | |
| 38 | 38 | // The identity Codey claims in a pane. Source must be stable across runs and |
| @@ -8,7 +8,7 @@ import ( | ||
| 8 | 8 | "sync" |
| 9 | 9 | "testing" |
| 10 | 10 | |
| 11 | - "codey/internal/hooks" | |
| 11 | + "github.com/johannSo/codey/internal/hooks" | |
| 12 | 12 | ) |
| 13 | 13 | |
| 14 | 14 | // pane is the environment of a process running inside a herdr pane. |
| @@ -11,7 +11,7 @@ import ( | ||
| 11 | 11 | "path/filepath" |
| 12 | 12 | "time" |
| 13 | 13 | |
| 14 | - "codey/internal/skills" | |
| 14 | + "github.com/johannSo/codey/internal/skills" | |
| 15 | 15 | ) |
| 16 | 16 | |
| 17 | 17 | // SkillURL is where herdr publishes the skill that teaches a coding agent to |
| @@ -9,7 +9,7 @@ import ( | ||
| 9 | 9 | "strings" |
| 10 | 10 | "testing" |
| 11 | 11 | |
| 12 | - "codey/internal/skills" | |
| 12 | + "github.com/johannSo/codey/internal/skills" | |
| 13 | 13 | ) |
| 14 | 14 | |
| 15 | 15 | // realSkill is the shape of the file herdr publishes: frontmatter naming the |
| @@ -14,7 +14,7 @@ import ( | ||
| 14 | 14 | "testing" |
| 15 | 15 | "time" |
| 16 | 16 | |
| 17 | - "codey/internal/config" | |
| 17 | + "github.com/johannSo/codey/internal/config" | |
| 18 | 18 | ) |
| 19 | 19 | |
| 20 | 20 | // fakeServer is an MCP server that lives in the test process and speaks the |
| @@ -6,7 +6,7 @@ import ( | ||
| 6 | 6 | "fmt" |
| 7 | 7 | "strings" |
| 8 | 8 | |
| 9 | - "codey/internal/tools" | |
| 9 | + "github.com/johannSo/codey/internal/tools" | |
| 10 | 10 | ) |
| 11 | 11 | |
| 12 | 12 | // namePrefix and nameSep spell a tool's registered name as |
| @@ -13,7 +13,7 @@ import ( | ||
| 13 | 13 | "sync" |
| 14 | 14 | "time" |
| 15 | 15 | |
| 16 | - "codey/internal/statedir" | |
| 16 | + "github.com/johannSo/codey/internal/statedir" | |
| 17 | 17 | ) |
| 18 | 18 | |
| 19 | 19 | // DefaultPath is where Codey logs unless told otherwise. |
| @@ -5,9 +5,9 @@ import ( | ||
| 5 | 5 | "strings" |
| 6 | 6 | "time" |
| 7 | 7 | |
| 8 | - "codey/internal/acp" | |
| 9 | - "codey/internal/agent" | |
| 10 | - "codey/internal/subagent" | |
| 8 | + "github.com/johannSo/codey/internal/acp" | |
| 9 | + "github.com/johannSo/codey/internal/agent" | |
| 10 | + "github.com/johannSo/codey/internal/subagent" | |
| 11 | 11 | ) |
| 12 | 12 | |
| 13 | 13 | // A subagent is shown as a tool call, because a tool call is the only |
| @@ -8,12 +8,12 @@ import ( | ||
| 8 | 8 | "testing" |
| 9 | 9 | "time" |
| 10 | 10 | |
| 11 | - "codey/internal/acp" | |
| 12 | - "codey/internal/agent" | |
| 13 | - "codey/internal/llm" | |
| 14 | - "codey/internal/metrics" | |
| 15 | - "codey/internal/subagent" | |
| 16 | - "codey/internal/tools" | |
| 11 | + "github.com/johannSo/codey/internal/acp" | |
| 12 | + "github.com/johannSo/codey/internal/agent" | |
| 13 | + "github.com/johannSo/codey/internal/llm" | |
| 14 | + "github.com/johannSo/codey/internal/metrics" | |
| 15 | + "github.com/johannSo/codey/internal/subagent" | |
| 16 | + "github.com/johannSo/codey/internal/tools" | |
| 17 | 17 | ) |
| 18 | 18 | |
| 19 | 19 | // fakeAgents is a supervisor the test drives by hand: no children, no model |
| @@ -6,7 +6,7 @@ import ( | ||
| 6 | 6 | "strings" |
| 7 | 7 | "testing" |
| 8 | 8 | |
| 9 | - "codey/internal/acp" | |
| 9 | + "github.com/johannSo/codey/internal/acp" | |
| 10 | 10 | ) |
| 11 | 11 | |
| 12 | 12 | // The handshake T3 Code actually sends, byte for byte. |
| @@ -25,11 +25,11 @@ import ( | ||
| 25 | 25 | "strings" |
| 26 | 26 | "sync" |
| 27 | 27 | |
| 28 | - "codey/internal/acp" | |
| 29 | - "codey/internal/agent" | |
| 30 | - "codey/internal/approval" | |
| 31 | - "codey/internal/llm" | |
| 32 | - "codey/internal/subagent" | |
| 28 | + "github.com/johannSo/codey/internal/acp" | |
| 29 | + "github.com/johannSo/codey/internal/agent" | |
| 30 | + "github.com/johannSo/codey/internal/approval" | |
| 31 | + "github.com/johannSo/codey/internal/llm" | |
| 32 | + "github.com/johannSo/codey/internal/subagent" | |
| 33 | 33 | ) |
| 34 | 34 | |
| 35 | 35 | // PermissionMode is how tool calls are gated, chosen on the command line by |
| @@ -15,11 +15,11 @@ import ( | ||
| 15 | 15 | "testing" |
| 16 | 16 | "time" |
| 17 | 17 | |
| 18 | - "codey/internal/acp" | |
| 19 | - "codey/internal/agent" | |
| 20 | - "codey/internal/llm" | |
| 21 | - "codey/internal/metrics" | |
| 22 | - "codey/internal/tools" | |
| 18 | + "github.com/johannSo/codey/internal/acp" | |
| 19 | + "github.com/johannSo/codey/internal/agent" | |
| 20 | + "github.com/johannSo/codey/internal/llm" | |
| 21 | + "github.com/johannSo/codey/internal/metrics" | |
| 22 | + "github.com/johannSo/codey/internal/tools" | |
| 23 | 23 | ) |
| 24 | 24 | |
| 25 | 25 | // --- a fake Anthropic endpoint ------------------------------------------- |
| @@ -6,9 +6,9 @@ import ( | ||
| 6 | 6 | "encoding/hex" |
| 7 | 7 | "sync" |
| 8 | 8 | |
| 9 | - "codey/internal/acp" | |
| 10 | - "codey/internal/agent" | |
| 11 | - "codey/internal/approval" | |
| 9 | + "github.com/johannSo/codey/internal/acp" | |
| 10 | + "github.com/johannSo/codey/internal/agent" | |
| 11 | + "github.com/johannSo/codey/internal/approval" | |
| 12 | 12 | ) |
| 13 | 13 | |
| 14 | 14 | // session is one conversation. A client may run several at once against the |
| @@ -6,9 +6,9 @@ import ( | ||
| 6 | 6 | "sync" |
| 7 | 7 | "time" |
| 8 | 8 | |
| 9 | - "codey/internal/acp" | |
| 10 | - "codey/internal/agent" | |
| 11 | - "codey/internal/approval" | |
| 9 | + "github.com/johannSo/codey/internal/acp" | |
| 10 | + "github.com/johannSo/codey/internal/agent" | |
| 11 | + "github.com/johannSo/codey/internal/approval" | |
| 12 | 12 | ) |
| 13 | 13 | |
| 14 | 14 | // flushAfter and flushBytes are when buffered text goes out. One notification |
| @@ -6,8 +6,8 @@ import ( | ||
| 6 | 6 | "testing" |
| 7 | 7 | "time" |
| 8 | 8 | |
| 9 | - "codey/internal/acp" | |
| 10 | - "codey/internal/agent" | |
| 9 | + "github.com/johannSo/codey/internal/acp" | |
| 10 | + "github.com/johannSo/codey/internal/agent" | |
| 11 | 11 | ) |
| 12 | 12 | |
| 13 | 13 | // recorder collects the updates an emitter produces, and drives its clock, so |
| @@ -7,10 +7,10 @@ import ( | ||
| 7 | 7 | "testing" |
| 8 | 8 | "time" |
| 9 | 9 | |
| 10 | - "codey/internal/agent" | |
| 11 | - "codey/internal/approval" | |
| 12 | - "codey/internal/metrics" | |
| 13 | - "codey/internal/tools" | |
| 10 | + "github.com/johannSo/codey/internal/agent" | |
| 11 | + "github.com/johannSo/codey/internal/approval" | |
| 12 | + "github.com/johannSo/codey/internal/metrics" | |
| 13 | + "github.com/johannSo/codey/internal/tools" | |
| 14 | 14 | ) |
| 15 | 15 | |
| 16 | 16 | // Parallel agents are parallel spend, so only so many run at once and the rest |
| @@ -20,11 +20,11 @@ import ( | ||
| 20 | 20 | "sync" |
| 21 | 21 | "time" |
| 22 | 22 | |
| 23 | - "codey/internal/agent" | |
| 24 | - "codey/internal/approval" | |
| 25 | - "codey/internal/llm" | |
| 26 | - "codey/internal/metrics" | |
| 27 | - "codey/internal/tools" | |
| 23 | + "github.com/johannSo/codey/internal/agent" | |
| 24 | + "github.com/johannSo/codey/internal/approval" | |
| 25 | + "github.com/johannSo/codey/internal/llm" | |
| 26 | + "github.com/johannSo/codey/internal/metrics" | |
| 27 | + "github.com/johannSo/codey/internal/tools" | |
| 28 | 28 | ) |
| 29 | 29 | |
| 30 | 30 | // Status is where one subagent is in its life. |
| @@ -13,10 +13,10 @@ import ( | ||
| 13 | 13 | "testing" |
| 14 | 14 | "time" |
| 15 | 15 | |
| 16 | - "codey/internal/agent" | |
| 17 | - "codey/internal/llm" | |
| 18 | - "codey/internal/metrics" | |
| 19 | - "codey/internal/tools" | |
| 16 | + "github.com/johannSo/codey/internal/agent" | |
| 17 | + "github.com/johannSo/codey/internal/llm" | |
| 18 | + "github.com/johannSo/codey/internal/metrics" | |
| 19 | + "github.com/johannSo/codey/internal/tools" | |
| 20 | 20 | ) |
| 21 | 21 | |
| 22 | 22 | // settle is how long a test waits before concluding nothing more is coming. |
| @@ -5,7 +5,7 @@ import ( | ||
| 5 | 5 | "fmt" |
| 6 | 6 | "strings" |
| 7 | 7 | |
| 8 | - "codey/internal/tools" | |
| 8 | + "github.com/johannSo/codey/internal/tools" | |
| 9 | 9 | ) |
| 10 | 10 | |
| 11 | 11 | // spawnArgs is what the model sends to start an agent. |
| @@ -8,8 +8,8 @@ import ( | ||
| 8 | 8 | "testing" |
| 9 | 9 | "time" |
| 10 | 10 | |
| 11 | - "codey/internal/agent" | |
| 12 | - "codey/internal/tools" | |
| 11 | + "github.com/johannSo/codey/internal/agent" | |
| 12 | + "github.com/johannSo/codey/internal/tools" | |
| 13 | 13 | ) |
| 14 | 14 | |
| 15 | 15 | func toolNamed(t *testing.T, s *Supervisor, name string) tools.Tool { |
| @@ -9,7 +9,7 @@ import ( | ||
| 9 | 9 | "testing" |
| 10 | 10 | "time" |
| 11 | 11 | |
| 12 | - "codey/internal/diag" | |
| 12 | + "github.com/johannSo/codey/internal/diag" | |
| 13 | 13 | ) |
| 14 | 14 | |
| 15 | 15 | // stubDiagnoser records what it was asked about and answers with a fixed |
| @@ -11,7 +11,7 @@ import ( | ||
| 11 | 11 | |
| 12 | 12 | "github.com/bmatcuk/doublestar/v4" |
| 13 | 13 | |
| 14 | - "codey/internal/statedir" | |
| 14 | + "github.com/johannSo/codey/internal/statedir" | |
| 15 | 15 | ) |
| 16 | 16 | |
| 17 | 17 | // maxResults caps how many paths or matches a search tool returns. The count of |
| @@ -8,7 +8,7 @@ import ( | ||
| 8 | 8 | "sort" |
| 9 | 9 | "strings" |
| 10 | 10 | |
| 11 | - "codey/internal/diag" | |
| 11 | + "github.com/johannSo/codey/internal/diag" | |
| 12 | 12 | ) |
| 13 | 13 | |
| 14 | 14 | // LanguageServer is what the lsp tool asks about code. *diag.Runner |
| @@ -15,7 +15,7 @@ import ( | ||
| 15 | 15 | "strings" |
| 16 | 16 | "time" |
| 17 | 17 | |
| 18 | - "codey/internal/llm" | |
| 18 | + "github.com/johannSo/codey/internal/llm" | |
| 19 | 19 | ) |
| 20 | 20 | |
| 21 | 21 | // defaultReadLimit is how many lines read_file returns when the model does not |
| @@ -13,7 +13,7 @@ import ( | ||
| 13 | 13 | "strings" |
| 14 | 14 | "testing" |
| 15 | 15 | |
| 16 | - "codey/internal/llm" | |
| 16 | + "github.com/johannSo/codey/internal/llm" | |
| 17 | 17 | ) |
| 18 | 18 | |
| 19 | 19 | func writePNG(t *testing.T, dir, name string, w, h int) string { |
| @@ -13,8 +13,8 @@ import ( | ||
| 13 | 13 | "sync" |
| 14 | 14 | "time" |
| 15 | 15 | |
| 16 | - "codey/internal/llm" | |
| 17 | - "codey/internal/metrics" | |
| 16 | + "github.com/johannSo/codey/internal/llm" | |
| 17 | + "github.com/johannSo/codey/internal/metrics" | |
| 18 | 18 | |
| 19 | 19 | "github.com/invopop/jsonschema" |
| 20 | 20 | ) |
| @@ -8,7 +8,7 @@ import ( | ||
| 8 | 8 | "strings" |
| 9 | 9 | "testing" |
| 10 | 10 | |
| 11 | - "codey/internal/metrics" | |
| 11 | + "github.com/johannSo/codey/internal/metrics" | |
| 12 | 12 | ) |
| 13 | 13 | |
| 14 | 14 | type echoArgs struct { |
| @@ -7,7 +7,7 @@ import ( | ||
| 7 | 7 | "sort" |
| 8 | 8 | "strings" |
| 9 | 9 | |
| 10 | - "codey/internal/skills" | |
| 10 | + "github.com/johannSo/codey/internal/skills" | |
| 11 | 11 | ) |
| 12 | 12 | |
| 13 | 13 | // SkillArgs is the skill input. The name is constrained to the discovered |
| @@ -5,7 +5,7 @@ import ( | ||
| 5 | 5 | "strings" |
| 6 | 6 | "testing" |
| 7 | 7 | |
| 8 | - "codey/internal/skills" | |
| 8 | + "github.com/johannSo/codey/internal/skills" | |
| 9 | 9 | ) |
| 10 | 10 | |
| 11 | 11 | func testSkills() []skills.Skill { |
| @@ -6,7 +6,7 @@ import ( | ||
| 6 | 6 | "strings" |
| 7 | 7 | "sync" |
| 8 | 8 | |
| 9 | - "codey/internal/websearch" | |
| 9 | + "github.com/johannSo/codey/internal/websearch" | |
| 10 | 10 | ) |
| 11 | 11 | |
| 12 | 12 | // Search budgets. Ten results is already more of a menu than anyone reads, and |
| @@ -12,7 +12,7 @@ import ( | ||
| 12 | 12 | "strings" |
| 13 | 13 | "testing" |
| 14 | 14 | |
| 15 | - "codey/internal/websearch" | |
| 15 | + "github.com/johannSo/codey/internal/websearch" | |
| 16 | 16 | ) |
| 17 | 17 | |
| 18 | 18 | // stubSearcher stands in for a provider, so no test here runs a command or |
| @@ -15,12 +15,12 @@ import ( | ||
| 15 | 15 | "github.com/charmbracelet/bubbles/spinner" |
| 16 | 16 | tea "github.com/charmbracelet/bubbletea" |
| 17 | 17 | |
| 18 | - "codey/internal/agent" | |
| 19 | - "codey/internal/approval" | |
| 20 | - "codey/internal/llm" | |
| 21 | - "codey/internal/metrics" | |
| 22 | - "codey/internal/subagent" | |
| 23 | - "codey/internal/tools" | |
| 18 | + "github.com/johannSo/codey/internal/agent" | |
| 19 | + "github.com/johannSo/codey/internal/approval" | |
| 20 | + "github.com/johannSo/codey/internal/llm" | |
| 21 | + "github.com/johannSo/codey/internal/metrics" | |
| 22 | + "github.com/johannSo/codey/internal/subagent" | |
| 23 | + "github.com/johannSo/codey/internal/tools" | |
| 24 | 24 | ) |
| 25 | 25 | |
| 26 | 26 | // scriptedAPI answers the main agent and its children differently, so one |
| @@ -19,7 +19,7 @@ import ( | ||
| 19 | 19 | "github.com/charmbracelet/bubbles/textinput" |
| 20 | 20 | tea "github.com/charmbracelet/bubbletea" |
| 21 | 21 | |
| 22 | - "codey/internal/ask" | |
| 22 | + "github.com/johannSo/codey/internal/ask" | |
| 23 | 23 | ) |
| 24 | 24 | |
| 25 | 25 | // askState is one question box: what was asked, where the cursor is, what has |
| @@ -7,8 +7,8 @@ import ( | ||
| 7 | 7 | tea "github.com/charmbracelet/bubbletea" |
| 8 | 8 | "github.com/charmbracelet/lipgloss" |
| 9 | 9 | |
| 10 | - "codey/internal/approval" | |
| 11 | - "codey/internal/ask" | |
| 10 | + "github.com/johannSo/codey/internal/approval" | |
| 11 | + "github.com/johannSo/codey/internal/ask" | |
| 12 | 12 | ) |
| 13 | 13 | |
| 14 | 14 | // question queues a question the way the bridge would and returns the channel |
| @@ -5,11 +5,11 @@ import ( | ||
| 5 | 5 | |
| 6 | 6 | tea "github.com/charmbracelet/bubbletea" |
| 7 | 7 | |
| 8 | - "codey/internal/agent" | |
| 9 | - "codey/internal/approval" | |
| 10 | - "codey/internal/ask" | |
| 11 | - "codey/internal/llm" | |
| 12 | - "codey/internal/subagent" | |
| 8 | + "github.com/johannSo/codey/internal/agent" | |
| 9 | + "github.com/johannSo/codey/internal/approval" | |
| 10 | + "github.com/johannSo/codey/internal/ask" | |
| 11 | + "github.com/johannSo/codey/internal/llm" | |
| 12 | + "github.com/johannSo/codey/internal/subagent" | |
| 13 | 13 | ) |
| 14 | 14 | |
| 15 | 15 | // The agent loop runs on its own goroutine and must not know a UI exists. It |
| @@ -9,9 +9,9 @@ import ( | ||
| 9 | 9 | |
| 10 | 10 | tea "github.com/charmbracelet/bubbletea" |
| 11 | 11 | |
| 12 | - "codey/internal/agent" | |
| 13 | - "codey/internal/approval" | |
| 14 | - "codey/internal/ask" | |
| 12 | + "github.com/johannSo/codey/internal/agent" | |
| 13 | + "github.com/johannSo/codey/internal/approval" | |
| 14 | + "github.com/johannSo/codey/internal/ask" | |
| 15 | 15 | ) |
| 16 | 16 | |
| 17 | 17 | // recorder stands in for tea.Program: it captures what the bridge sends |
| @@ -8,7 +8,7 @@ import ( | ||
| 8 | 8 | "github.com/charmbracelet/lipgloss" |
| 9 | 9 | "github.com/muesli/termenv" |
| 10 | 10 | |
| 11 | - "codey/internal/llm" | |
| 11 | + "github.com/johannSo/codey/internal/llm" | |
| 12 | 12 | ) |
| 13 | 13 | |
| 14 | 14 | // forceColour makes styles emit real escape sequences. Without it the test |
| @@ -7,7 +7,7 @@ import ( | ||
| 7 | 7 | |
| 8 | 8 | "github.com/charmbracelet/lipgloss" |
| 9 | 9 | |
| 10 | - "codey/internal/skills" | |
| 10 | + "github.com/johannSo/codey/internal/skills" | |
| 11 | 11 | ) |
| 12 | 12 | |
| 13 | 13 | // command is one thing the prompt box accepts with a leading slash: either a |
| @@ -6,7 +6,7 @@ import ( | ||
| 6 | 6 | |
| 7 | 7 | "github.com/charmbracelet/lipgloss" |
| 8 | 8 | |
| 9 | - "codey/internal/skills" | |
| 9 | + "github.com/johannSo/codey/internal/skills" | |
| 10 | 10 | ) |
| 11 | 11 | |
| 12 | 12 | // helpWidth is the narrowest terminal /help is meant to be read on. Eighty is |
| @@ -5,7 +5,7 @@ import ( | ||
| 5 | 5 | "strings" |
| 6 | 6 | "testing" |
| 7 | 7 | |
| 8 | - "codey/internal/agent" | |
| 8 | + "github.com/johannSo/codey/internal/agent" | |
| 9 | 9 | ) |
| 10 | 10 | |
| 11 | 11 | // /compact rewrites the history the in-flight request is built from, so it has |
| @@ -6,7 +6,7 @@ import ( | ||
| 6 | 6 | |
| 7 | 7 | tea "github.com/charmbracelet/bubbletea" |
| 8 | 8 | |
| 9 | - "codey/internal/skills" | |
| 9 | + "github.com/johannSo/codey/internal/skills" | |
| 10 | 10 | ) |
| 11 | 11 | |
| 12 | 12 | // The menu belongs to a slash command being typed, and to nothing else: a |
| @@ -7,7 +7,7 @@ import ( | ||
| 7 | 7 | tea "github.com/charmbracelet/bubbletea" |
| 8 | 8 | "github.com/charmbracelet/lipgloss" |
| 9 | 9 | |
| 10 | - "codey/internal/llm" | |
| 10 | + "github.com/johannSo/codey/internal/llm" | |
| 11 | 11 | ) |
| 12 | 12 | |
| 13 | 13 | // defaultEffort is where the marker sits when nothing has been chosen. The |
| @@ -6,7 +6,7 @@ import ( | ||
| 6 | 6 | |
| 7 | 7 | tea "github.com/charmbracelet/bubbletea" |
| 8 | 8 | |
| 9 | - "codey/internal/llm" | |
| 9 | + "github.com/johannSo/codey/internal/llm" | |
| 10 | 10 | ) |
| 11 | 11 | |
| 12 | 12 | // levelAt is where a level sits on the track, so tests can talk about |
| @@ -8,7 +8,7 @@ import ( | ||
| 8 | 8 | "time" |
| 9 | 9 | "unicode" |
| 10 | 10 | |
| 11 | - "codey/internal/llm" | |
| 11 | + "github.com/johannSo/codey/internal/llm" | |
| 12 | 12 | ) |
| 13 | 13 | |
| 14 | 14 | // human renders a token count the way a status bar wants to read it. |
| @@ -9,7 +9,7 @@ import ( | ||
| 9 | 9 | |
| 10 | 10 | tea "github.com/charmbracelet/bubbletea" |
| 11 | 11 | |
| 12 | - "codey/internal/statedir" | |
| 12 | + "github.com/johannSo/codey/internal/statedir" | |
| 13 | 13 | ) |
| 14 | 14 | |
| 15 | 15 | // The prompt's memory. Everything submitted from the box — a prompt to the |
| @@ -11,9 +11,9 @@ import ( | ||
| 11 | 11 | tea "github.com/charmbracelet/bubbletea" |
| 12 | 12 | "github.com/charmbracelet/lipgloss" |
| 13 | 13 | |
| 14 | - "codey/internal/approval" | |
| 15 | - "codey/internal/llm" | |
| 16 | - "codey/internal/statedir" | |
| 14 | + "github.com/johannSo/codey/internal/approval" | |
| 15 | + "github.com/johannSo/codey/internal/llm" | |
| 16 | + "github.com/johannSo/codey/internal/statedir" | |
| 17 | 17 | ) |
| 18 | 18 | |
| 19 | 19 | // newHistoryModel builds a model whose history has a real directory to live |
| @@ -10,8 +10,8 @@ import ( | ||
| 10 | 10 | tea "github.com/charmbracelet/bubbletea" |
| 11 | 11 | "github.com/charmbracelet/lipgloss" |
| 12 | 12 | |
| 13 | - "codey/internal/llm" | |
| 14 | - "codey/internal/tools" | |
| 13 | + "github.com/johannSo/codey/internal/llm" | |
| 14 | + "github.com/johannSo/codey/internal/tools" | |
| 15 | 15 | ) |
| 16 | 16 | |
| 17 | 17 | // localMode is which interpreter the prompt box is pointed at. Off is the |
| @@ -9,10 +9,10 @@ import ( | ||
| 9 | 9 | "github.com/charmbracelet/bubbles/spinner" |
| 10 | 10 | tea "github.com/charmbracelet/bubbletea" |
| 11 | 11 | |
| 12 | - "codey/internal/agent" | |
| 13 | - "codey/internal/approval" | |
| 14 | - "codey/internal/llm" | |
| 15 | - "codey/internal/tools" | |
| 12 | + "github.com/johannSo/codey/internal/agent" | |
| 13 | + "github.com/johannSo/codey/internal/approval" | |
| 14 | + "github.com/johannSo/codey/internal/llm" | |
| 15 | + "github.com/johannSo/codey/internal/tools" | |
| 16 | 16 | ) |
| 17 | 17 | |
| 18 | 18 | // newLocalModel builds a model with a real agent behind it, so a local |
| @@ -8,8 +8,8 @@ import ( | ||
| 8 | 8 | tea "github.com/charmbracelet/bubbletea" |
| 9 | 9 | "github.com/charmbracelet/lipgloss" |
| 10 | 10 | |
| 11 | - "codey/internal/approval" | |
| 12 | - "codey/internal/llm" | |
| 11 | + "github.com/johannSo/codey/internal/approval" | |
| 12 | + "github.com/johannSo/codey/internal/llm" | |
| 13 | 13 | ) |
| 14 | 14 | |
| 15 | 15 | func TestPrettyModel(t *testing.T) { |
| @@ -14,15 +14,15 @@ import ( | ||
| 14 | 14 | tea "github.com/charmbracelet/bubbletea" |
| 15 | 15 | "github.com/charmbracelet/lipgloss" |
| 16 | 16 | |
| 17 | - "codey/internal/agent" | |
| 18 | - "codey/internal/approval" | |
| 19 | - "codey/internal/ask" | |
| 20 | - "codey/internal/attach" | |
| 21 | - "codey/internal/config" | |
| 22 | - "codey/internal/llm" | |
| 23 | - "codey/internal/skills" | |
| 24 | - "codey/internal/subagent" | |
| 25 | - "codey/internal/tools" | |
| 17 | + "github.com/johannSo/codey/internal/agent" | |
| 18 | + "github.com/johannSo/codey/internal/approval" | |
| 19 | + "github.com/johannSo/codey/internal/ask" | |
| 20 | + "github.com/johannSo/codey/internal/attach" | |
| 21 | + "github.com/johannSo/codey/internal/config" | |
| 22 | + "github.com/johannSo/codey/internal/llm" | |
| 23 | + "github.com/johannSo/codey/internal/skills" | |
| 24 | + "github.com/johannSo/codey/internal/subagent" | |
| 25 | + "github.com/johannSo/codey/internal/tools" | |
| 26 | 26 | ) |
| 27 | 27 | |
| 28 | 28 | // Options wires the TUI to an already-built agent. The TUI owns no policy of |
| @@ -10,7 +10,7 @@ import ( | ||
| 10 | 10 | tea "github.com/charmbracelet/bubbletea" |
| 11 | 11 | "github.com/charmbracelet/lipgloss" |
| 12 | 12 | |
| 13 | - "codey/internal/llm" | |
| 13 | + "github.com/johannSo/codey/internal/llm" | |
| 14 | 14 | ) |
| 15 | 15 | |
| 16 | 16 | // modelFetchTimeout bounds the wait. Someone is sitting in front of a picker |
| @@ -10,7 +10,7 @@ import ( | ||
| 10 | 10 | |
| 11 | 11 | tea "github.com/charmbracelet/bubbletea" |
| 12 | 12 | |
| 13 | - "codey/internal/llm" | |
| 13 | + "github.com/johannSo/codey/internal/llm" | |
| 14 | 14 | ) |
| 15 | 15 | |
| 16 | 16 | func someModels() []llm.Model { |
| @@ -7,10 +7,10 @@ import ( | ||
| 7 | 7 | |
| 8 | 8 | tea "github.com/charmbracelet/bubbletea" |
| 9 | 9 | |
| 10 | - "codey/internal/approval" | |
| 11 | - "codey/internal/config" | |
| 12 | - "codey/internal/llm" | |
| 13 | - "codey/internal/skills" | |
| 10 | + "github.com/johannSo/codey/internal/approval" | |
| 11 | + "github.com/johannSo/codey/internal/config" | |
| 12 | + "github.com/johannSo/codey/internal/llm" | |
| 13 | + "github.com/johannSo/codey/internal/skills" | |
| 14 | 14 | ) |
| 15 | 15 | |
| 16 | 16 | // newTestModel builds a model far enough to drive Update/View without a |
| @@ -7,7 +7,7 @@ import ( | ||
| 7 | 7 | tea "github.com/charmbracelet/bubbletea" |
| 8 | 8 | "github.com/charmbracelet/lipgloss" |
| 9 | 9 | |
| 10 | - "codey/internal/llm" | |
| 10 | + "github.com/johannSo/codey/internal/llm" | |
| 11 | 11 | ) |
| 12 | 12 | |
| 13 | 13 | // The mouse is handled here the way keys are handled in onKey: one entry |
| @@ -15,8 +15,8 @@ import ( | ||
| 15 | 15 | |
| 16 | 16 | "github.com/muesli/termenv" |
| 17 | 17 | |
| 18 | - "codey/internal/approval" | |
| 19 | - "codey/internal/llm" | |
| 18 | + "github.com/johannSo/codey/internal/approval" | |
| 19 | + "github.com/johannSo/codey/internal/llm" | |
| 20 | 20 | ) |
| 21 | 21 | |
| 22 | 22 | func press(x, y int) tea.MouseMsg { |
| @@ -7,7 +7,7 @@ import ( | ||
| 7 | 7 | "github.com/atotto/clipboard" |
| 8 | 8 | tea "github.com/charmbracelet/bubbletea" |
| 9 | 9 | |
| 10 | - "codey/internal/attach" | |
| 10 | + "github.com/johannSo/codey/internal/attach" | |
| 11 | 11 | ) |
| 12 | 12 | |
| 13 | 13 | // Pasting a picture into a terminal is not one gesture but three, because no |
| @@ -13,8 +13,8 @@ import ( | ||
| 13 | 13 | |
| 14 | 14 | tea "github.com/charmbracelet/bubbletea" |
| 15 | 15 | |
| 16 | - "codey/internal/attach" | |
| 17 | - "codey/internal/llm" | |
| 16 | + "github.com/johannSo/codey/internal/attach" | |
| 17 | + "github.com/johannSo/codey/internal/llm" | |
| 18 | 18 | ) |
| 19 | 19 | |
| 20 | 20 | func testPNG(t *testing.T) []byte { |
| @@ -10,8 +10,8 @@ import ( | ||
| 10 | 10 | tea "github.com/charmbracelet/bubbletea" |
| 11 | 11 | "github.com/charmbracelet/lipgloss" |
| 12 | 12 | |
| 13 | - "codey/internal/agent" | |
| 14 | - "codey/internal/llm" | |
| 13 | + "github.com/johannSo/codey/internal/agent" | |
| 14 | + "github.com/johannSo/codey/internal/llm" | |
| 15 | 15 | ) |
| 16 | 16 | |
| 17 | 17 | // The session chooser is deliberately scoped to the working root. Sessions are |
| @@ -12,11 +12,11 @@ import ( | ||
| 12 | 12 | |
| 13 | 13 | tea "github.com/charmbracelet/bubbletea" |
| 14 | 14 | |
| 15 | - "codey/internal/agent" | |
| 16 | - "codey/internal/approval" | |
| 17 | - "codey/internal/llm" | |
| 18 | - "codey/internal/metrics" | |
| 19 | - "codey/internal/tools" | |
| 15 | + "github.com/johannSo/codey/internal/agent" | |
| 16 | + "github.com/johannSo/codey/internal/approval" | |
| 17 | + "github.com/johannSo/codey/internal/llm" | |
| 18 | + "github.com/johannSo/codey/internal/metrics" | |
| 19 | + "github.com/johannSo/codey/internal/tools" | |
| 20 | 20 | ) |
| 21 | 21 | |
| 22 | 22 | // saveSession writes one session file directly, which is the same thing |
| @@ -7,7 +7,7 @@ import ( | ||
| 7 | 7 | tea "github.com/charmbracelet/bubbletea" |
| 8 | 8 | "github.com/charmbracelet/lipgloss" |
| 9 | 9 | |
| 10 | - "codey/internal/config" | |
| 10 | + "github.com/johannSo/codey/internal/config" | |
| 11 | 11 | ) |
| 12 | 12 | |
| 13 | 13 | // The settings panel: /settings. One row per thing the config file holds, |
| @@ -9,9 +9,9 @@ import ( | ||
| 9 | 9 | tea "github.com/charmbracelet/bubbletea" |
| 10 | 10 | "github.com/charmbracelet/lipgloss" |
| 11 | 11 | |
| 12 | - "codey/internal/approval" | |
| 13 | - "codey/internal/config" | |
| 14 | - "codey/internal/llm" | |
| 12 | + "github.com/johannSo/codey/internal/approval" | |
| 13 | + "github.com/johannSo/codey/internal/config" | |
| 14 | + "github.com/johannSo/codey/internal/llm" | |
| 15 | 15 | ) |
| 16 | 16 | |
| 17 | 17 | // newSettingsModel builds a chat model with a config already on disk and a |
| @@ -7,8 +7,8 @@ import ( | ||
| 7 | 7 | |
| 8 | 8 | tea "github.com/charmbracelet/bubbletea" |
| 9 | 9 | |
| 10 | - "codey/internal/approval" | |
| 11 | - "codey/internal/llm" | |
| 10 | + "github.com/johannSo/codey/internal/approval" | |
| 11 | + "github.com/johannSo/codey/internal/llm" | |
| 12 | 12 | ) |
| 13 | 13 | |
| 14 | 14 | // newTestTabs builds a strip whose NewSession hands back empty sessions: no |
| @@ -3,7 +3,7 @@ package tui | ||
| 3 | 3 | import ( |
| 4 | 4 | "github.com/charmbracelet/lipgloss" |
| 5 | 5 | |
| 6 | - "codey/internal/config" | |
| 6 | + "github.com/johannSo/codey/internal/config" | |
| 7 | 7 | ) |
| 8 | 8 | |
| 9 | 9 | // A theme is a palette, not a set of styles: the styles in styles.go are |
| @@ -9,9 +9,9 @@ import ( | ||
| 9 | 9 | "github.com/charmbracelet/bubbles/textinput" |
| 10 | 10 | tea "github.com/charmbracelet/bubbletea" |
| 11 | 11 | |
| 12 | - "codey/internal/config" | |
| 13 | - "codey/internal/llm" | |
| 14 | - "codey/internal/skills" | |
| 12 | + "github.com/johannSo/codey/internal/config" | |
| 13 | + "github.com/johannSo/codey/internal/llm" | |
| 14 | + "github.com/johannSo/codey/internal/skills" | |
| 15 | 15 | ) |
| 16 | 16 | |
| 17 | 17 | // The setup wizard: a full-screen, one-question-at-a-time interface that owns |
| @@ -10,9 +10,9 @@ import ( | ||
| 10 | 10 | tea "github.com/charmbracelet/bubbletea" |
| 11 | 11 | "github.com/charmbracelet/lipgloss" |
| 12 | 12 | |
| 13 | - "codey/internal/config" | |
| 14 | - "codey/internal/llm" | |
| 15 | - "codey/internal/skills" | |
| 13 | + "github.com/johannSo/codey/internal/config" | |
| 14 | + "github.com/johannSo/codey/internal/llm" | |
| 15 | + "github.com/johannSo/codey/internal/skills" | |
| 16 | 16 | ) |
| 17 | 17 | |
| 18 | 18 | // newTestWizard builds a wizard on a comfortable screen with the catalogue |
| @@ -10,7 +10,7 @@ import ( | ||
| 10 | 10 | |
| 11 | 11 | "github.com/charmbracelet/lipgloss" |
| 12 | 12 | |
| 13 | - "codey/internal/config" | |
| 13 | + "github.com/johannSo/codey/internal/config" | |
| 14 | 14 | ) |
| 15 | 15 | |
| 16 | 16 | // ---- view --------------------------------------------------------------- |
| @@ -16,8 +16,8 @@ import ( | ||
| 16 | 16 | |
| 17 | 17 | tea "github.com/charmbracelet/bubbletea" |
| 18 | 18 | |
| 19 | - "codey/internal/config" | |
| 20 | - "codey/internal/llm" | |
| 19 | + "github.com/johannSo/codey/internal/config" | |
| 20 | + "github.com/johannSo/codey/internal/llm" | |
| 21 | 21 | ) |
| 22 | 22 | |
| 23 | 23 | // defaultScript is what is written to ~/.config/codey/worktree.sh the first |
| @@ -15,8 +15,8 @@ import ( | ||
| 15 | 15 | tea "github.com/charmbracelet/bubbletea" |
| 16 | 16 | "github.com/charmbracelet/lipgloss" |
| 17 | 17 | |
| 18 | - "codey/internal/agent" | |
| 19 | - "codey/internal/llm" | |
| 18 | + "github.com/johannSo/codey/internal/agent" | |
| 19 | + "github.com/johannSo/codey/internal/llm" | |
| 20 | 20 | ) |
| 21 | 21 | |
| 22 | 22 | // /worktree resume is the other half of /worktree: one makes a tree, this one |
| @@ -12,10 +12,10 @@ import ( | ||
| 12 | 12 | |
| 13 | 13 | tea "github.com/charmbracelet/bubbletea" |
| 14 | 14 | |
| 15 | - "codey/internal/agent" | |
| 16 | - "codey/internal/approval" | |
| 17 | - "codey/internal/llm" | |
| 18 | - "codey/internal/tools" | |
| 15 | + "github.com/johannSo/codey/internal/agent" | |
| 16 | + "github.com/johannSo/codey/internal/approval" | |
| 17 | + "github.com/johannSo/codey/internal/llm" | |
| 18 | + "github.com/johannSo/codey/internal/tools" | |
| 19 | 19 | ) |
| 20 | 20 | |
| 21 | 21 | // pickerModel is a model wired the way main.go wires one — an agent, a session |
| @@ -10,11 +10,11 @@ import ( | ||
| 10 | 10 | |
| 11 | 11 | tea "github.com/charmbracelet/bubbletea" |
| 12 | 12 | |
| 13 | - "codey/internal/agent" | |
| 14 | - "codey/internal/approval" | |
| 15 | - "codey/internal/config" | |
| 16 | - "codey/internal/llm" | |
| 17 | - "codey/internal/tools" | |
| 13 | + "github.com/johannSo/codey/internal/agent" | |
| 14 | + "github.com/johannSo/codey/internal/approval" | |
| 15 | + "github.com/johannSo/codey/internal/config" | |
| 16 | + "github.com/johannSo/codey/internal/llm" | |
| 17 | + "github.com/johannSo/codey/internal/tools" | |
| 18 | 18 | ) |
| 19 | 19 | |
| 20 | 20 | // isolateConfig points the config directory at a temp dir, so a test never |
| @@ -7,7 +7,7 @@ import ( | ||
| 7 | 7 | "io" |
| 8 | 8 | "strings" |
| 9 | 9 | |
| 10 | - "codey/internal/approval" | |
| 10 | + "github.com/johannSo/codey/internal/approval" | |
| 11 | 11 | ) |
| 12 | 12 | |
| 13 | 13 | // Approver reads approval decisions from a terminal. |
| @@ -8,7 +8,7 @@ import ( | ||
| 8 | 8 | "strconv" |
| 9 | 9 | "strings" |
| 10 | 10 | |
| 11 | - "codey/internal/ask" | |
| 11 | + "github.com/johannSo/codey/internal/ask" | |
| 12 | 12 | ) |
| 13 | 13 | |
| 14 | 14 | // Asker puts the agent's questions to a terminal, one line at a time. It is |
| @@ -7,7 +7,7 @@ import ( | ||
| 7 | 7 | "strings" |
| 8 | 8 | "testing" |
| 9 | 9 | |
| 10 | - "codey/internal/ask" | |
| 10 | + "github.com/johannSo/codey/internal/ask" | |
| 11 | 11 | ) |
| 12 | 12 | |
| 13 | 13 | func askOn(t *testing.T, input string, req ask.Request) (ask.Response, string) { |
| @@ -11,8 +11,8 @@ import ( | ||
| 11 | 11 | "sort" |
| 12 | 12 | "strings" |
| 13 | 13 | |
| 14 | - "codey/internal/agent" | |
| 15 | - "codey/internal/llm" | |
| 14 | + "github.com/johannSo/codey/internal/agent" | |
| 15 | + "github.com/johannSo/codey/internal/llm" | |
| 16 | 16 | ) |
| 17 | 17 | |
| 18 | 18 | // ANSI codes, blanked when the output is not a terminal or NO_COLOR is set. |
| @@ -6,8 +6,8 @@ import ( | ||
| 6 | 6 | "strings" |
| 7 | 7 | "testing" |
| 8 | 8 | |
| 9 | - "codey/internal/agent" | |
| 10 | - "codey/internal/llm" | |
| 9 | + "github.com/johannSo/codey/internal/agent" | |
| 10 | + "github.com/johannSo/codey/internal/llm" | |
| 11 | 11 | ) |
| 12 | 12 | |
| 13 | 13 | func TestSummarizeInputIsSortedAndBounded(t *testing.T) { |