Skip to content
Closed
Show file tree
Hide file tree
Changes from 46 commits
Commits
Show all changes
52 commits
Select commit Hold shift + click to select a range
d6c38ea
feat(mcp): persist MCP enabled state to config file
mikij Feb 21, 2026
82a8290
fix(mcp): resolve config path consistently and handle persistence errors
mikij Feb 21, 2026
58407b0
refactor(config): improve config file resolution priority
mikij Feb 23, 2026
f061cb2
fix(config): preserve MCP connections on config reload
mikij Feb 23, 2026
db3cf55
fix(config): find correct config file for MCP toggle persistence
mikij Feb 23, 2026
0da79ae
fix(config): skip managed config paths when determining where to writ…
mikij Feb 23, 2026
ea8fd54
fix(config): handle MCP toggle in read-only managed config
mikij Feb 23, 2026
a7bcb7d
Merge branch 'main' into fix/#565-mcp-toggle
mikij Feb 23, 2026
4b8738f
fix(config): resolve config path order mismatch and add change event …
mikij Feb 23, 2026
83730ae
Merge branch 'main' into fix/#565-mcp-toggle
mikij Feb 23, 2026
838149e
fix(config): remive try/catch
mikij Feb 23, 2026
f8d2627
fix(config): config writes go to the same location hierarchy as confi…
mikij Feb 23, 2026
2d6cfc5
fix(config): eliminates wasteful operations when toggling an MCP serv…
mikij Feb 23, 2026
7d4e872
fix(config): PR comments
mikij Feb 23, 2026
85b5b3f
fix(config): Added GlobalBus.emit() to update() to notify UI/watchers…
mikij Feb 23, 2026
71c50d4
Merge branch 'main' into fix/#565-mcp-toggle
mikij Feb 26, 2026
2537889
fix(config): addressing comments after conflict resolution
mikij Feb 26, 2026
2d8b32a
Merge branch 'main' into fix/#565-mcp-toggle
mikij Feb 26, 2026
582bafe
fix(config): addressed new set of PR comments
mikij Feb 26, 2026
51d638f
Merge branch 'main' into fix/#565-mcp-toggle
mikij Feb 26, 2026
122fb73
fix(config): addressed new set of PR comments
mikij Feb 26, 2026
fbbff14
Merge branch 'main' into fix/#565-mcp-toggle
mikij Mar 4, 2026
0aff250
chore(sdk): removing generated changes from PR
mikij Mar 4, 2026
ea6c8b2
fix(mcp): improve toggle logic and config search
mikij Mar 4, 2026
e61db48
fix(config): add file locking and fix state disposal order
mikij Mar 4, 2026
5a83ec0
fix(config): improve config file loading order and MCP handling
mikij Mar 4, 2026
e4990d6
fix(config): use parseJsonc instead of JSON.parse for inline config
mikij Mar 4, 2026
d9cfca5
docs(config): reorganize config resolution order comments
mikij Mar 4, 2026
b5b5ec1
refactor(config): update mcp config search order precedence
mikij Mar 4, 2026
d2fd238
fix(config): reverse directory depth sort for config file resolution
mikij Mar 4, 2026
dcee5c1
Merge branch 'main' into fix/#565-mcp-toggle
mikij Mar 4, 2026
8834242
fix(config): simplify mcp config file existence check
mikij Mar 4, 2026
6386ba2
refactor(config): improve mcp toggle validation and config path resol…
mikij Mar 5, 2026
701f796
Merge branch 'main' into fix/#565-mcp-toggle
mikij Mar 5, 2026
12c1151
Merge remote-tracking branch 'origin/main' into fix/#565-mcp-toggle
mikij Mar 14, 2026
54aa765
fix(config): remove premature Instance.dispose() call
mikij Mar 14, 2026
584dae3
feat(config): enhance cache management and config file precedence
mikij Mar 14, 2026
8b03048
feat(config): add reactive configuration update handling
mikij Mar 14, 2026
6c8201a
refactor(sdk): reorganize event types and standardize json formatting
mikij Mar 14, 2026
913945c
fix(vscode): correct config change event directory comparison
mikij Mar 14, 2026
1355367
feat(config): add boolean return to persistMcpToggle for success indi…
mikij Mar 14, 2026
ead0d9f
fix(vscode): correct config change handler to use reloadAfterAuthChange
mikij Mar 14, 2026
f93fdbb
fix(vscode): fix MCP toggle config change handling for worktrees
mikij Mar 14, 2026
2e43b29
fix(config): refine shared config detection for accurate state disposal
mikij Mar 14, 2026
48592d8
fix(config): ensure all workspaces refresh after shared config change
mikij Mar 14, 2026
f7d52e3
Merge branch 'main' into fix/#565-mcp-toggle
mikij Mar 15, 2026
c257437
fix(config): ensure all state is disposed when shared config changes
mikij Mar 15, 2026
8124de8
fix(worktree): refine shared config detection and add directory param…
mikij Mar 15, 2026
2e1a399
feat: adjust config/state disposal and refresh behavior to preserve a…
mikij Mar 15, 2026
e74b27a
fix(config): ensure state disposal runs for current directory regardl…
mikij Mar 15, 2026
f6b0332
feat(config): add .kilocode directory support as legacy config fallback
mikij Mar 15, 2026
ddc4e9b
Merge branch 'main' into fix/#565-mcp-toggle
mikij Mar 18, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions packages/app/src/context/global-sync/event-reducer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,13 @@ export function applyDirectoryEvent(input: {
input.push(input.directory)
return
}
case "config.changed": {
const props = event.properties as { directory: string }
if (props.directory === input.directory) {
input.push(input.directory)
}
return
}
case "session.created": {
const info = (event.properties as { info: Session }).info
const result = Binary.search(input.store.session, info.id, (s) => s.id)
Expand Down
2 changes: 1 addition & 1 deletion packages/desktop-electron/sst-env.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,4 @@
/// <reference path="../../sst-env.d.ts" />

import "sst"
export {}
export {}
4 changes: 1 addition & 3 deletions packages/kilo-docs/lib/nav/kiloclaw.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,7 @@ export const KiloClawNav: NavSection[] = [
{
href: "/kiloclaw/development-tools/github",
children: "Development Tools",
subLinks: [
{ href: "/kiloclaw/development-tools/github", children: "GitHub" },
],
subLinks: [{ href: "/kiloclaw/development-tools/github", children: "GitHub" }],
},
{ href: "/kiloclaw/version-pinning", children: "Version Pinning" },
{ href: "/kiloclaw/troubleshooting", children: "Troubleshooting" },
Expand Down
10 changes: 7 additions & 3 deletions packages/kilo-docs/next.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -32,9 +32,13 @@ module.exports = withMarkdoc(/* config: https://markdoc.io/docs/nextjs#options *
},
],
afterFiles: [
{ source: "/ingest/static/:path*", destination: "https://us-assets.i.posthog.com/static/:path*", basePath: false },
{ source: "/ingest/decide", destination: "https://us.i.posthog.com/decide", basePath: false },
{ source: "/ingest/:path*", destination: "https://us.i.posthog.com/:path*", basePath: false }, // catch-all must be last
{
source: "/ingest/static/:path*",
destination: "https://us-assets.i.posthog.com/static/:path*",
basePath: false,
},
{ source: "/ingest/decide", destination: "https://us.i.posthog.com/decide", basePath: false },
{ source: "/ingest/:path*", destination: "https://us.i.posthog.com/:path*", basePath: false }, // catch-all must be last
],
}
},
Expand Down
2 changes: 1 addition & 1 deletion packages/kilo-docs/pages/ai-providers/unbound.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ Kilo Code supports accessing models through [Unbound](https://getunbound.ai/), a
## Creating an Account

1. **Sign Up/Sign In:** Go to the [Unbound gateway](https://gateway.getunbound.ai). Create an account or sign in.
2. **Create an Application:** Go to the [Applications](https://gateway.getunbound.ai/ai-gateway-applications) page and hit the "Create Application" button.
2. **Create an Application:** In the gateway dashboard, create an application and copy the API key.
3. **Copy the API Key:** Copy the API key to your clipboard.

## Supported Models
Expand Down
22 changes: 11 additions & 11 deletions packages/kilo-docs/pages/kiloclaw/development-tools/github.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,21 +27,21 @@ Once you have a GitHub account ready, continue to Step 2.

KiloClaw uses a [fine grained Personal Access Token](https://github.com/settings/tokens?type=beta) to authenticate as your bot. When creating the token, use these settings:

| Setting | Recommended Value |
| --- | --- |
| **Token name** | `kiloclaw-bot` (or any descriptive name) |
| **Expiration** | 90 days (set a reminder to rotate) |
| Setting | Recommended Value |
| --------------------- | ----------------------------------------- |
| **Token name** | `kiloclaw-bot` (or any descriptive name) |
| **Expiration** | 90 days (set a reminder to rotate) |
| **Repository access** | All repositories, or select specific ones |

Grant the following permissions:

| Permission | Access Level | Purpose |
| --- | --- | --- |
| **Contents** | Read & Write | Clone repos, push commits |
| **Pull requests** | Read & Write | Open and manage pull requests |
| **Issues** | Read & Write | Create and comment on issues |
| **Metadata** | Read only | List repositories and basic repo info |
| **Workflows** | Read & Write | Trigger and manage GitHub Actions workflows |
| Permission | Access Level | Purpose |
| ----------------- | ------------ | ------------------------------------------- |
| **Contents** | Read & Write | Clone repos, push commits |
| **Pull requests** | Read & Write | Open and manage pull requests |
| **Issues** | Read & Write | Create and comment on issues |
| **Metadata** | Read only | List repositories and basic repo info |
| **Workflows** | Read & Write | Trigger and manage GitHub Actions workflows |

### Step 3: Enter credentials in KiloClaw

Expand Down
11 changes: 11 additions & 0 deletions packages/kilo-vscode/src/KiloProvider.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1986,6 +1986,17 @@ export class KiloProvider implements vscode.WebviewViewProvider, TelemetryProper
return
}

// Refresh config and dependent data when the server signals a config change
const affectedDirectories = new Set<string>()
affectedDirectories.add(this.getWorkspaceDirectory()) // root workspace
for (const sessionDir of this.sessionDirectories.values()) {
affectedDirectories.add(sessionDir) // worktree directories
}
if (event.type === "config.changed" && affectedDirectories.has(event.properties.directory)) {
void this.reloadAfterAuthChange()
Comment thread
mikij marked this conversation as resolved.
Outdated
return
}

// Forward relevant events to webview
// Side effects that must happen before the webview message is sent
if (event.type === "session.created" && !this.currentSession) {
Expand Down
Loading
Loading