@link-assistant/agent 0.8.21 → 0.8.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +10 -8
- package/package.json +1 -1
- package/src/index.js +3 -3
- package/src/provider/provider.ts +12 -3
- package/src/tool/task.ts +1 -1
package/README.md
CHANGED
|
@@ -20,11 +20,11 @@
|
|
|
20
20
|
|
|
21
21
|
> This is the JavaScript/Bun implementation. See also the [Rust implementation](../rust/README.md).
|
|
22
22
|
|
|
23
|
-
This is an MVP implementation of an OpenCode-compatible CLI agent, focused on maximum efficiency and unrestricted execution. We reproduce OpenCode's `run --format json --model opencode/
|
|
23
|
+
This is an MVP implementation of an OpenCode-compatible CLI agent, focused on maximum efficiency and unrestricted execution. We reproduce OpenCode's `run --format json --model opencode/kimi-k2.5-free` mode with:
|
|
24
24
|
|
|
25
|
-
- ✅ **JSON Input/Output**: Compatible with `opencode run --format json --model opencode/
|
|
25
|
+
- ✅ **JSON Input/Output**: Compatible with `opencode run --format json --model opencode/kimi-k2.5-free`
|
|
26
26
|
- ✅ **Plain Text Input**: Also accepts plain text messages (auto-converted to JSON format)
|
|
27
|
-
- ✅ **Flexible Model Selection**: Defaults to free OpenCode Zen
|
|
27
|
+
- ✅ **Flexible Model Selection**: Defaults to free OpenCode Zen Kimi K2.5, supports [OpenCode Zen](https://opencode.ai/docs/zen/), [Claude OAuth](../docs/claude-oauth.md), [Groq](../docs/groq.md), and [OpenRouter](../docs/openrouter.md) providers
|
|
28
28
|
- ✅ **No Restrictions**: Fully unrestricted file system and command execution access (no sandbox)
|
|
29
29
|
- ✅ **Minimal Footprint**: Built with Bun.sh for maximum efficiency
|
|
30
30
|
- ✅ **Full Tool Support**: 13 tools including websearch, codesearch, batch - all enabled by default
|
|
@@ -169,7 +169,7 @@ echo '{"message":"hi"}' | agent
|
|
|
169
169
|
**With custom model:**
|
|
170
170
|
|
|
171
171
|
```bash
|
|
172
|
-
echo "hi" | agent --model opencode/
|
|
172
|
+
echo "hi" | agent --model opencode/kimi-k2.5-free
|
|
173
173
|
```
|
|
174
174
|
|
|
175
175
|
### More Examples
|
|
@@ -190,12 +190,14 @@ echo '{"message":"run command","tools":[{"name":"bash","params":{"command":"ls -
|
|
|
190
190
|
**Using different models:**
|
|
191
191
|
|
|
192
192
|
```bash
|
|
193
|
-
# Default model (free
|
|
193
|
+
# Default model (free Kimi K2.5)
|
|
194
194
|
echo "hi" | agent
|
|
195
195
|
|
|
196
|
-
# Other free models
|
|
197
|
-
echo "hi" | agent --model opencode/
|
|
196
|
+
# Other free models (in order of recommendation)
|
|
197
|
+
echo "hi" | agent --model opencode/minimax-m2.1-free
|
|
198
198
|
echo "hi" | agent --model opencode/gpt-5-nano
|
|
199
|
+
echo "hi" | agent --model opencode/glm-4.7-free
|
|
200
|
+
echo "hi" | agent --model opencode/big-pickle
|
|
199
201
|
|
|
200
202
|
# Premium models (OpenCode Zen subscription)
|
|
201
203
|
echo "hi" | agent --model opencode/sonnet # Claude Sonnet 4.5
|
|
@@ -279,7 +281,7 @@ agent [options]
|
|
|
279
281
|
|
|
280
282
|
Options:
|
|
281
283
|
--model Model to use in format providerID/modelID
|
|
282
|
-
Default: opencode/
|
|
284
|
+
Default: opencode/kimi-k2.5-free
|
|
283
285
|
--json-standard JSON output format standard
|
|
284
286
|
Choices: "opencode" (default), "claude" (experimental)
|
|
285
287
|
--use-existing-claude-oauth Use existing Claude OAuth credentials
|
package/package.json
CHANGED
package/src/index.js
CHANGED
|
@@ -147,7 +147,7 @@ async function parseModelConfig(argv) {
|
|
|
147
147
|
// Parse model argument (handle model IDs with slashes like groq/qwen/qwen3-32b)
|
|
148
148
|
const modelParts = argv.model.split('/');
|
|
149
149
|
let providerID = modelParts[0] || 'opencode';
|
|
150
|
-
let modelID = modelParts.slice(1).join('/') || '
|
|
150
|
+
let modelID = modelParts.slice(1).join('/') || 'kimi-k2.5-free';
|
|
151
151
|
|
|
152
152
|
// Handle --use-existing-claude-oauth option
|
|
153
153
|
// This reads OAuth credentials from ~/.claude/.credentials.json (Claude Code CLI)
|
|
@@ -175,7 +175,7 @@ async function parseModelConfig(argv) {
|
|
|
175
175
|
|
|
176
176
|
// If user specified a model, use it with claude-oauth provider
|
|
177
177
|
// If not, use claude-oauth/claude-sonnet-4-5 as default
|
|
178
|
-
if (providerID === 'opencode' && modelID === '
|
|
178
|
+
if (providerID === 'opencode' && modelID === 'kimi-k2.5-free') {
|
|
179
179
|
providerID = 'claude-oauth';
|
|
180
180
|
modelID = 'claude-sonnet-4-5';
|
|
181
181
|
} else if (!['claude-oauth', 'anthropic'].includes(providerID)) {
|
|
@@ -575,7 +575,7 @@ async function main() {
|
|
|
575
575
|
.option('model', {
|
|
576
576
|
type: 'string',
|
|
577
577
|
description: 'Model to use in format providerID/modelID',
|
|
578
|
-
default: 'opencode/
|
|
578
|
+
default: 'opencode/kimi-k2.5-free',
|
|
579
579
|
})
|
|
580
580
|
.option('json-standard', {
|
|
581
581
|
type: 'string',
|
package/src/provider/provider.ts
CHANGED
|
@@ -1005,7 +1005,13 @@ export namespace Provider {
|
|
|
1005
1005
|
priority = priority.filter((m) => m !== 'claude-haiku-4.5');
|
|
1006
1006
|
}
|
|
1007
1007
|
if (providerID === 'opencode' || providerID === 'local') {
|
|
1008
|
-
priority = [
|
|
1008
|
+
priority = [
|
|
1009
|
+
'kimi-k2.5-free',
|
|
1010
|
+
'minimax-m2.1-free',
|
|
1011
|
+
'gpt-5-nano',
|
|
1012
|
+
'glm-4.7-free',
|
|
1013
|
+
'big-pickle',
|
|
1014
|
+
];
|
|
1009
1015
|
}
|
|
1010
1016
|
for (const item of priority) {
|
|
1011
1017
|
for (const model of Object.keys(provider.info.models)) {
|
|
@@ -1015,10 +1021,13 @@ export namespace Provider {
|
|
|
1015
1021
|
}
|
|
1016
1022
|
|
|
1017
1023
|
const priority = [
|
|
1018
|
-
'
|
|
1024
|
+
'kimi-k2.5-free',
|
|
1025
|
+
'minimax-m2.1-free',
|
|
1026
|
+
'gpt-5-nano',
|
|
1027
|
+
'glm-4.7-free',
|
|
1028
|
+
'big-pickle',
|
|
1019
1029
|
'gpt-5',
|
|
1020
1030
|
'claude-sonnet-4',
|
|
1021
|
-
'big-pickle',
|
|
1022
1031
|
'gemini-3-pro',
|
|
1023
1032
|
];
|
|
1024
1033
|
export function sort(models: ModelsDev.Model[]) {
|