mirror of
https://github.com/Kilo-Org/kilocode.git
synced 2026-08-29 03:44:06 +08:00
chore: generate
This commit is contained in:
@@ -143,11 +143,7 @@ export function DialogModel(props: { providerID?: string }) {
|
||||
}
|
||||
// kilocode_change start - Show "Recommended" category for recommended Kilo models
|
||||
const isKiloRecommended = provider.id === "kilo" && KILO_RECOMMENDED_MODELS.includes(model)
|
||||
const category = connected()
|
||||
? isKiloRecommended
|
||||
? "Recommended"
|
||||
: provider.name
|
||||
: undefined
|
||||
const category = connected() ? (isKiloRecommended ? "Recommended" : provider.name) : undefined
|
||||
// kilocode_change end
|
||||
return {
|
||||
value,
|
||||
|
||||
@@ -9,12 +9,15 @@ Kilocode stores rules in various file locations. When Opencode starts, it reads
|
||||
## Key Guarantees
|
||||
|
||||
### 1. Read-Only Migration
|
||||
|
||||
The migration **never modifies project files**. We only:
|
||||
|
||||
- Read existing rule files from disk
|
||||
- Inject file paths into the config's `instructions` array
|
||||
- Never write to the project or modify any files
|
||||
|
||||
### 2. Combines with Existing Config (Never Overwrites)
|
||||
|
||||
If you have existing opencode config with `instructions`, the Kilocode rules are **combined**, not replaced:
|
||||
|
||||
```typescript
|
||||
@@ -29,6 +32,7 @@ If you have existing opencode config with `instructions`, the Kilocode rules are
|
||||
```
|
||||
|
||||
### 3. Restart to Pick Up Changes
|
||||
|
||||
If you change your Kilocode configuration (e.g., edit `.kilocoderules`), simply restart kilo-cli to pick up the new config. No manual migration or conversion needed.
|
||||
|
||||
## Source Locations
|
||||
@@ -37,32 +41,33 @@ The migrator reads rules from these locations:
|
||||
|
||||
### Project Rules
|
||||
|
||||
| Location | Description |
|
||||
|----------|-------------|
|
||||
| `.kilocoderules` | Legacy single-file rules in project root |
|
||||
| `.kilocode/rules/*.md` | Directory-based rules (multiple markdown files) |
|
||||
| `.kilocoderules-{mode}` | Mode-specific legacy rules (e.g., `.kilocoderules-code`) |
|
||||
| `.kilocode/rules-{mode}/*.md` | Mode-specific rule directories |
|
||||
| Location | Description |
|
||||
| ----------------------------- | -------------------------------------------------------- |
|
||||
| `.kilocoderules` | Legacy single-file rules in project root |
|
||||
| `.kilocode/rules/*.md` | Directory-based rules (multiple markdown files) |
|
||||
| `.kilocoderules-{mode}` | Mode-specific legacy rules (e.g., `.kilocoderules-code`) |
|
||||
| `.kilocode/rules-{mode}/*.md` | Mode-specific rule directories |
|
||||
|
||||
### Global Rules
|
||||
|
||||
| Location | Description |
|
||||
|----------|-------------|
|
||||
| Location | Description |
|
||||
| ------------------------ | ---------------------- |
|
||||
| `~/.kilocode/rules/*.md` | Global rules directory |
|
||||
|
||||
## File Mapping
|
||||
|
||||
| Kilocode Location | Opencode Equivalent |
|
||||
|-------------------|---------------------|
|
||||
| `.kilocoderules` | `instructions: [".kilocoderules"]` |
|
||||
| `.kilocoderules-{mode}` | `instructions: [".kilocoderules-{mode}"]` |
|
||||
| `.kilocode/rules/*.md` | `instructions: [".kilocode/rules/file.md", ...]` |
|
||||
| Kilocode Location | Opencode Equivalent |
|
||||
| ----------------------------- | ------------------------------------------------------- |
|
||||
| `.kilocoderules` | `instructions: [".kilocoderules"]` |
|
||||
| `.kilocoderules-{mode}` | `instructions: [".kilocoderules-{mode}"]` |
|
||||
| `.kilocode/rules/*.md` | `instructions: [".kilocode/rules/file.md", ...]` |
|
||||
| `.kilocode/rules-{mode}/*.md` | `instructions: [".kilocode/rules-{mode}/file.md", ...]` |
|
||||
| `~/.kilocode/rules/*.md` | `instructions: ["~/.kilocode/rules/file.md", ...]` |
|
||||
| `~/.kilocode/rules/*.md` | `instructions: ["~/.kilocode/rules/file.md", ...]` |
|
||||
|
||||
## AGENTS.md Compatibility
|
||||
|
||||
`AGENTS.md` is loaded **natively** by Opencode - no migration needed. Opencode automatically loads:
|
||||
|
||||
- `AGENTS.md` in project root
|
||||
- `CLAUDE.md` in project root
|
||||
- `~/.opencode/AGENTS.md` (global)
|
||||
@@ -70,6 +75,7 @@ The migrator reads rules from these locations:
|
||||
## Not Migrated
|
||||
|
||||
The following are **not** migrated:
|
||||
|
||||
- `.roorules` - Roo-specific rules
|
||||
- `.clinerules` - Cline-specific rules
|
||||
|
||||
@@ -82,6 +88,7 @@ Mode-specific rules (e.g., `.kilocoderules-code`, `.kilocode/rules-architect/`)
|
||||
## Warnings
|
||||
|
||||
The migrator generates warnings for:
|
||||
|
||||
- **Legacy files**: When `.kilocoderules` is found, a warning suggests migrating to `.kilocode/rules/` directory structure
|
||||
|
||||
## Example
|
||||
|
||||
+248
-1
@@ -3876,6 +3876,252 @@
|
||||
]
|
||||
}
|
||||
},
|
||||
"/kilo/profile": {
|
||||
"get": {
|
||||
"operationId": "kilo.profile",
|
||||
"parameters": [
|
||||
{
|
||||
"in": "query",
|
||||
"name": "directory",
|
||||
"schema": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
],
|
||||
"summary": "Get Kilo Gateway profile",
|
||||
"description": "Fetch user profile and organizations from Kilo Gateway",
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Profile data",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"profile": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"email": {
|
||||
"type": "string"
|
||||
},
|
||||
"name": {
|
||||
"type": "string"
|
||||
},
|
||||
"organizations": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "string"
|
||||
},
|
||||
"name": {
|
||||
"type": "string"
|
||||
},
|
||||
"role": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"required": ["id", "name", "role"]
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": ["email"]
|
||||
},
|
||||
"balance": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"balance": {
|
||||
"type": "number"
|
||||
}
|
||||
},
|
||||
"required": ["balance"]
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
]
|
||||
},
|
||||
"currentOrgId": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": ["profile", "balance", "currentOrgId"]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"400": {
|
||||
"description": "Bad request",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/BadRequestError"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"x-codeSamples": [
|
||||
{
|
||||
"lang": "js",
|
||||
"source": "import { createOpencodeClient } from \"@opencode-ai/sdk\n\nconst client = createOpencodeClient()\nawait client.kilo.profile({\n ...\n})"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"/kilo/organization": {
|
||||
"post": {
|
||||
"operationId": "kilo.organization.set",
|
||||
"parameters": [
|
||||
{
|
||||
"in": "query",
|
||||
"name": "directory",
|
||||
"schema": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
],
|
||||
"summary": "Update Kilo Gateway organization",
|
||||
"description": "Switch to a different Kilo Gateway organization",
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Organization updated successfully",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"type": "boolean"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"400": {
|
||||
"description": "Bad request",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/BadRequestError"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"requestBody": {
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"organizationId": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": ["organizationId"]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"x-codeSamples": [
|
||||
{
|
||||
"lang": "js",
|
||||
"source": "import { createOpencodeClient } from \"@opencode-ai/sdk\n\nconst client = createOpencodeClient()\nawait client.kilo.organization.set({\n ...\n})"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"/kilo/notifications": {
|
||||
"get": {
|
||||
"operationId": "kilo.notifications",
|
||||
"parameters": [
|
||||
{
|
||||
"in": "query",
|
||||
"name": "directory",
|
||||
"schema": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
],
|
||||
"summary": "Get Kilo notifications",
|
||||
"description": "Fetch notifications from Kilo Gateway for CLI display",
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Notifications list",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "string"
|
||||
},
|
||||
"title": {
|
||||
"type": "string"
|
||||
},
|
||||
"message": {
|
||||
"type": "string"
|
||||
},
|
||||
"action": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"actionText": {
|
||||
"type": "string"
|
||||
},
|
||||
"actionURL": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"required": ["actionText", "actionURL"]
|
||||
},
|
||||
"showIn": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": ["id", "title", "message"]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"400": {
|
||||
"description": "Bad request",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/BadRequestError"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"x-codeSamples": [
|
||||
{
|
||||
"lang": "js",
|
||||
"source": "import { createOpencodeClient } from \"@opencode-ai/sdk\n\nconst client = createOpencodeClient()\nawait client.kilo.notifications({\n ...\n})"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"/find": {
|
||||
"get": {
|
||||
"operationId": "find.text",
|
||||
@@ -9823,7 +10069,8 @@
|
||||
"type": "boolean"
|
||||
},
|
||||
"openTelemetry": {
|
||||
"description": "Enable OpenTelemetry spans for AI SDK calls (using the 'experimental_telemetry' flag)",
|
||||
"description": "Enable telemetry. Set to false to opt-out.",
|
||||
"default": true,
|
||||
"type": "boolean"
|
||||
},
|
||||
"primary_tools": {
|
||||
|
||||
Reference in New Issue
Block a user