diff --git a/.changeset/agents-md-documentation.md b/.changeset/agents-md-documentation.md deleted file mode 100644 index 63ef8e49238..00000000000 --- a/.changeset/agents-md-documentation.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"kilo-code": patch ---- - -Add comprehensive AGENTS.md documentation page to Agent Behavior section diff --git a/.changeset/append-system-prompt-cli.md b/.changeset/append-system-prompt-cli.md deleted file mode 100644 index 0dd14155464..00000000000 --- a/.changeset/append-system-prompt-cli.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@kilocode/cli": patch -"kilo-code": patch ---- - -Add `--append-system-prompt` CLI option to append custom instructions to the system prompt diff --git a/.changeset/enable-jetbrains-autocomplete.md b/.changeset/enable-jetbrains-autocomplete.md new file mode 100644 index 00000000000..109f89977ea --- /dev/null +++ b/.changeset/enable-jetbrains-autocomplete.md @@ -0,0 +1,5 @@ +--- +"kilo-code": patch +--- + +Enable autocomplete by default in the JetBrains extension diff --git a/.changeset/stupid-mayflies-pay.md b/.changeset/stupid-mayflies-pay.md deleted file mode 100644 index b31964e5c6d..00000000000 --- a/.changeset/stupid-mayflies-pay.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"kilo-code": patch ---- - -Allow null for tool arguments diff --git a/.changeset/worktree-migration.md b/.changeset/worktree-migration.md deleted file mode 100644 index 5b6c21c7069..00000000000 --- a/.changeset/worktree-migration.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"kilo-code": minor ---- - -Migrate worktree creation from CLI to extension for parallel mode sessions diff --git a/CHANGELOG.md b/CHANGELOG.md index 816e9becf37..9fcf33f0562 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,21 @@ # kilo-code +## 4.143.0 + +### Minor Changes + +- [#4643](https://github.com/Kilo-Org/kilocode/pull/4643) [`bf89c48`](https://github.com/Kilo-Org/kilocode/commit/bf89c4849342d9c0f3cfa335d65e98980d869e36) Thanks [@marius-kilocode](https://github.com/marius-kilocode)! - Migrate worktree creation from CLI to extension for parallel mode sessions + +### Patch Changes + +- [#4804](https://github.com/Kilo-Org/kilocode/pull/4804) [`e83c30a`](https://github.com/Kilo-Org/kilocode/commit/e83c30a4160309c45bcfedf60faad3eedff0549e) Thanks [@kiloconnect](https://github.com/apps/kiloconnect)! - Add comprehensive AGENTS.md documentation page to Agent Behavior section + +- [#4810](https://github.com/Kilo-Org/kilocode/pull/4810) [`2d8f5b4`](https://github.com/Kilo-Org/kilocode/commit/2d8f5b4f823750d22701d962ba27885b01f78acb) Thanks [@kiloconnect](https://github.com/apps/kiloconnect)! - Add `--append-system-prompt` CLI option to append custom instructions to the system prompt + +- [#4808](https://github.com/Kilo-Org/kilocode/pull/4808) [`3253a5f`](https://github.com/Kilo-Org/kilocode/commit/3253a5f0a9ef3db176b0cc027a9a0f246faa27e6) Thanks [@markijbema](https://github.com/markijbema)! - Rename and reorganize autocomplete settings to use more familiar terminology + +- [#4815](https://github.com/Kilo-Org/kilocode/pull/4815) [`1530050`](https://github.com/Kilo-Org/kilocode/commit/15300507c8febd2096282e97148e39a0bfda9e23) Thanks [@chrarnoldus](https://github.com/chrarnoldus)! - Allow null for tool arguments + ## 4.142.0 ### Minor Changes diff --git a/apps/kilocode-docs/docs/contributing/architecture/annual-billing.md b/apps/kilocode-docs/docs/contributing/architecture/annual-billing.md new file mode 100644 index 00000000000..1826bf7ae67 --- /dev/null +++ b/apps/kilocode-docs/docs/contributing/architecture/annual-billing.md @@ -0,0 +1,67 @@ +--- +sidebar_position: 3 +title: "Annual Billing" +--- + +# Annual Billing + +# Overview + +we want to switch to doing annual billing for teams and enterprise with a 1 month free and a "self-serve" sign up. + +# Requirements + +- no more 20$ of one time free credits on team signup per seat. **this is done** +- enable 30 day trial for both teams and enterprise + - no credit card required + - self-serve enterprise comes with no self-serve SSO. There's a button that puts them in touch with sales. (it costs us 125 a month for SSO per org) +- monthly plan is not accessible via the UI but is still in effect for existing customers and can be flagged back on easily. +- trial users can only upgrade to annual plans, 348/teams seat or $3588/ent seat, but we always talk about pricing in monthly terms. +- once trial expires, the organization will be denied access to the openrouter proxy endpoint, effectively disabling their kilocode usage w/ our API provider, and any existing outstanding credits they purchased will be locked up until they subscribe. + +### Non-requirements + +- fully self-service SSO enrollment for enterprise. There's still a bit of a touch required. Its possible to implement, but out of scope for this spec. +- pro-rated cancellation or refunds handled in a self-serve way. +- elastic seat counts with custom billing agreements for enterprise organizations. +- a full redesign of the team/enterprise sign up and pre-creation / marketing flow. + +# System Design + +System design is pretty straight-forward as we can _mostly_ leverage existing infrastructure and code. + +- System remains the same other than adding a `billing_cycle` column to `organization_seats_purcahses` where we can track if it is `monthly` or `yearly`. The migration will set the default to `monthly` so we backfill all existing customers. +- We will use `created_at` on the organization as the start date for the free trial. If the organization does not have a valid entry in `organization_seats_purchases` after 30 days, we will disable their access to the openrouter proxy endpoint. + +## Engineering Scope + +#### Migrations: + +- add `billing_cycle TEXT NOT NULL DEFAULT 'monthly'` to `organization_seats_purchases`. +- add `plan TEXT NOT NULL DEFAULT 'teams'` to `organizations` table which can be `teams` or `enterprise`. (While not strictly required we shouldn't rely on `seats_required` to decide if an org is a team or enterprise account and now is a good opportunity to fix this. Manually go through and set the very small number of design partner orgs and our org into `enterprise.` for now.) + +#### Tasks: + +- create yearly billing subscription product for teams AND for enterprise in stripe. +- change the organization create flow to create organization on submit (it does this now) but instead of redirecting to stripe to pay, redirect to organization page. Do not require an ahead-of-time seat count on either teams or enterprise. +- update logic for checking & displaying seats to take into consideration the free trial period, and allow invites for an unlimited number of seats while the trial is active. +- update subscription management page to allow for creating a new subscription from the page. +- update logic to actually block organizations which are not active on seats (they are either over their paid seat count or do not have an active seats purchases subscription). [a ticket for this already exists](https://github.com/orgs/Kilo-Org/projects/11?pane=issue&itemId=126001076&issue=Kilo-Org%7Ckilocode-backend%7C2167) note: this can wait until the end as by definition no one can have their trial expire for at least 30 days so we have a 30 day buffer to implement this. + +### Marketing Scope + +As a fast follow or in parallel the seats pod will pair up with someone from marketing or devrel to work on our engagement with this feature. + +- update / redesign team/enterprise "create" page in app with better CTAs +- work with eng to get the 'buy credits' action more importantly called out when a new org is created. General org onboarding flow (both teams and enterprise) needs help. +- significantly improve call-to-action flows around upgrading to paid subscriptions with potentially progressively louder noise as we get closer to the end of trial notice. +- send welcome email when org is created explaining the trail period. +- probably cut new videos to show off the enterprise features + +# Compliance Considerations + +No compliance concerns. + +# Features for the future + +Talks about what we might want to build or improve upon in the future but is out-of-scope of this spec. diff --git a/apps/kilocode-docs/docs/contributing/specs/spec-enterprise-mcp-controls.md b/apps/kilocode-docs/docs/contributing/architecture/enterprise-mcp-controls.md similarity index 98% rename from apps/kilocode-docs/docs/contributing/specs/spec-enterprise-mcp-controls.md rename to apps/kilocode-docs/docs/contributing/architecture/enterprise-mcp-controls.md index 38216af6a42..99b05d77460 100644 --- a/apps/kilocode-docs/docs/contributing/specs/spec-enterprise-mcp-controls.md +++ b/apps/kilocode-docs/docs/contributing/architecture/enterprise-mcp-controls.md @@ -1,9 +1,9 @@ --- sidebar_position: 4 -title: "Spec: Enterprise MCP Controls" +title: "Enterprise MCP Controls" --- -# Spec: Enterprise MCP Controls +# Enterprise MCP Controls ### Overview diff --git a/apps/kilocode-docs/docs/contributing/specs/spec-template.md b/apps/kilocode-docs/docs/contributing/architecture/feature-template.md similarity index 98% rename from apps/kilocode-docs/docs/contributing/specs/spec-template.md rename to apps/kilocode-docs/docs/contributing/architecture/feature-template.md index f5be247e70b..7493bb699a4 100644 --- a/apps/kilocode-docs/docs/contributing/specs/spec-template.md +++ b/apps/kilocode-docs/docs/contributing/architecture/feature-template.md @@ -3,7 +3,7 @@ sidebar_position: 2 title: "Spec Template" --- -# SPEC: Template +# Template # Overview diff --git a/apps/kilocode-docs/docs/contributing/specs/img/enterprise-mcp-controls-org-user-install.png b/apps/kilocode-docs/docs/contributing/architecture/img/enterprise-mcp-controls-org-user-install.png similarity index 100% rename from apps/kilocode-docs/docs/contributing/specs/img/enterprise-mcp-controls-org-user-install.png rename to apps/kilocode-docs/docs/contributing/architecture/img/enterprise-mcp-controls-org-user-install.png diff --git a/apps/kilocode-docs/docs/contributing/specs/img/enterprise-mcp-controls-today.png b/apps/kilocode-docs/docs/contributing/architecture/img/enterprise-mcp-controls-today.png similarity index 100% rename from apps/kilocode-docs/docs/contributing/specs/img/enterprise-mcp-controls-today.png rename to apps/kilocode-docs/docs/contributing/architecture/img/enterprise-mcp-controls-today.png diff --git a/apps/kilocode-docs/docs/contributing/specs/img/enterprise-mcp-controls-with-ent-control.png b/apps/kilocode-docs/docs/contributing/architecture/img/enterprise-mcp-controls-with-ent-control.png similarity index 100% rename from apps/kilocode-docs/docs/contributing/specs/img/enterprise-mcp-controls-with-ent-control.png rename to apps/kilocode-docs/docs/contributing/architecture/img/enterprise-mcp-controls-with-ent-control.png diff --git a/apps/kilocode-docs/docs/contributing/specs/img/organization-modes-library-1.png b/apps/kilocode-docs/docs/contributing/architecture/img/organization-modes-library-1.png similarity index 100% rename from apps/kilocode-docs/docs/contributing/specs/img/organization-modes-library-1.png rename to apps/kilocode-docs/docs/contributing/architecture/img/organization-modes-library-1.png diff --git a/apps/kilocode-docs/docs/contributing/specs/img/organization-modes-library-2.png b/apps/kilocode-docs/docs/contributing/architecture/img/organization-modes-library-2.png similarity index 100% rename from apps/kilocode-docs/docs/contributing/specs/img/organization-modes-library-2.png rename to apps/kilocode-docs/docs/contributing/architecture/img/organization-modes-library-2.png diff --git a/apps/kilocode-docs/docs/contributing/specs/img/track-repo-url-system-design.png b/apps/kilocode-docs/docs/contributing/architecture/img/track-repo-url-system-design.png similarity index 100% rename from apps/kilocode-docs/docs/contributing/specs/img/track-repo-url-system-design.png rename to apps/kilocode-docs/docs/contributing/architecture/img/track-repo-url-system-design.png diff --git a/apps/kilocode-docs/docs/contributing/specs/img/voice-transcription-architecture.png b/apps/kilocode-docs/docs/contributing/architecture/img/voice-transcription-architecture.png similarity index 100% rename from apps/kilocode-docs/docs/contributing/specs/img/voice-transcription-architecture.png rename to apps/kilocode-docs/docs/contributing/architecture/img/voice-transcription-architecture.png diff --git a/apps/kilocode-docs/docs/contributing/architecture.md b/apps/kilocode-docs/docs/contributing/architecture/index.md similarity index 76% rename from apps/kilocode-docs/docs/contributing/architecture.md rename to apps/kilocode-docs/docs/contributing/architecture/index.md index 72d84903f61..cd272a6e1ea 100644 --- a/apps/kilocode-docs/docs/contributing/architecture.md +++ b/apps/kilocode-docs/docs/contributing/architecture/index.md @@ -1,5 +1,5 @@ --- -sidebar_position: 2 +sidebar_position: 1 title: "Architecture Overview" --- @@ -13,85 +13,51 @@ Kilo Code is a VS Code extension built with TypeScript that connects to various ``` ┌─────────────────────────────────────────────────────────────────────┐ -│ VS Code Extension │ +│ VS Code Extension │ ├─────────────────────────────────────────────────────────────────────┤ -│ │ +│ │ │ ┌──────────────────┐ ┌──────────────────┐ │ │ │ Extension Host │ │ Webview UI │ │ │ │ (src/) │◀───▶│ (webview-ui/) │ │ │ └────────┬─────────┘ └──────────────────┘ │ -│ │ │ -│ │ Messages │ -│ ▼ │ +│ │ │ +│ │ Messages │ +│ ▼ │ │ ┌──────────────────────────────────────────────────────────────┐ │ -│ │ Core Services │ │ +│ │ Core Services │ │ │ ├────────────┬────────────┬────────────┬───────────────────────┤ │ │ │ Tools │ Browser │ MCP │ Code Index │ │ │ │ Service │ Session │ Servers │ Service │ │ │ └────────────┴────────────┴────────────┴───────────────────────┘ │ -│ │ │ -│ │ API Calls │ -│ ▼ │ +│ │ │ +│ │ API Calls │ +│ ▼ │ │ ┌──────────────────────────────────────────────────────────────┐ │ -│ │ API Provider Layer │ │ +│ │ API Provider Layer │ │ │ ├────────────┬────────────┬────────────┬───────────────────────┤ │ │ │ Anthropic │ OpenAI │ Kilo │ OpenRouter │ │ │ │ API │ API │ Provider │ API │ │ │ └────────────┴────────────┴────────────┴───────────────────────┘ │ -│ │ +│ │ └─────────────────────────────────────────────────────────────────────┘ ``` -## Key Components +### Features -### Extension Host (`src/`) +These pages document the architecture and design of a current or planned feature, as well as any unique development patterns. -The extension host runs in Node.js within VS Code and contains: +| Feature | Description | +| ------------------------------------------------------------------ | ------------------------------------------ | +| [Annual Billing](./annual-billing.md) | Annual subscription billing | +| [Enterprise MCP Controls](./enterprise-mcp-controls.md) | Admin controls for MCP server allowlists | +| [Onboarding Improvements](./onboarding-engagement-improvements.md) | User onboarding and engagement features | +| [Organization Modes Library](./organization-modes-library.md) | Shared modes for teams and enterprise | +| [Agentic Security Reviews](./security-reviews.md) | AI-powered security vulnerability analysis | +| [Track Repo URL](./track-repo-url.md) | Usage tracking by repository/project | +| [Vercel AI Gateway](./vercel-ai-gateway.md) | Vercel AI Gateway integration | +| [Voice Transcription](./voice-transcription.md) | Live voice input for chat | -- **`src/core/`** - The agent loop and core logic - - `Kilo.ts` - Main agent class that orchestrates interactions - - `prompts/` - System prompts and prompt construction - - `tools/` - Tool implementations (file operations, search, etc.) -- **`src/services/`** - Service implementations - - - `browser/` - Puppeteer-based browser automation - - `checkpoints/` - Git-based state checkpoints - - `code-index/` - Codebase indexing and semantic search - - `mcp/` - Model Context Protocol server integration - - `commit-message/` - Git commit message generation - -- **`src/api/`** - API provider implementations - - - Handles communication with AI providers - - Manages streaming responses - - Implements provider-specific features - -- **`src/activate/`** - Extension activation and command registration - -### Webview UI (`webview-ui/`) - -A React-based frontend that provides the chat interface: - -- Built with React and TypeScript -- Uses VS Code's webview API -- Communicates with extension host via message passing -- Styled with Tailwind CSS - -### Shared Packages (`packages/`) - -Shared code used across the monorepo: - -- `@kilocode/types` - Shared TypeScript types -- `@kilocode/telemetry` - Telemetry utilities - -### Applications (`apps/`) - -- `kilocode-docs` - This documentation site (Docusaurus) -- `kilocode-website` - Marketing website - -### Command-Line Interface (`cli/`) - -A standalone CLI for running Kilo Code outside of VS Code. +To propose a new feature design, consider using the [feature template](./feature-template.md). ## Key Concepts @@ -191,5 +157,4 @@ The project uses: ## Further Reading - [Development Environment](/contributing/development-environment) - Setup guide -- [Engineering Specs](/contributing/specs) - Technical specifications - [Tools Reference](/features/tools/tool-use-overview) - Available tools diff --git a/apps/kilocode-docs/docs/contributing/specs/spec-onboarding-engagement-improvements.md b/apps/kilocode-docs/docs/contributing/architecture/onboarding-engagement-improvements.md similarity index 98% rename from apps/kilocode-docs/docs/contributing/specs/spec-onboarding-engagement-improvements.md rename to apps/kilocode-docs/docs/contributing/architecture/onboarding-engagement-improvements.md index 6bec793d8a8..8630bb0e243 100644 --- a/apps/kilocode-docs/docs/contributing/specs/spec-onboarding-engagement-improvements.md +++ b/apps/kilocode-docs/docs/contributing/architecture/onboarding-engagement-improvements.md @@ -1,9 +1,9 @@ --- sidebar_position: 5 -title: "Spec: Improve Onboarding Flow" +title: "Improve Onboarding Flow" --- -# SPEC: Kilo Code Onboarding & User Engagement Improvements +# Kilo Code Onboarding & User Engagement Improvements # Overview diff --git a/apps/kilocode-docs/docs/contributing/specs/spec-organization-modes-library.md b/apps/kilocode-docs/docs/contributing/architecture/organization-modes-library.md similarity index 98% rename from apps/kilocode-docs/docs/contributing/specs/spec-organization-modes-library.md rename to apps/kilocode-docs/docs/contributing/architecture/organization-modes-library.md index 88b462c3a29..ba596a92f98 100644 --- a/apps/kilocode-docs/docs/contributing/specs/spec-organization-modes-library.md +++ b/apps/kilocode-docs/docs/contributing/architecture/organization-modes-library.md @@ -1,9 +1,9 @@ --- sidebar_position: 6 -title: "Spec: Organization Modes Library" +title: "Organization Modes Library" --- -# Spec: Organization Modes Library +# Organization Modes Library # Overview diff --git a/apps/kilocode-docs/docs/contributing/specs/spec-security-reviews.md b/apps/kilocode-docs/docs/contributing/architecture/security-reviews.md similarity index 99% rename from apps/kilocode-docs/docs/contributing/specs/spec-security-reviews.md rename to apps/kilocode-docs/docs/contributing/architecture/security-reviews.md index 501bec566cd..c0bfb734913 100644 --- a/apps/kilocode-docs/docs/contributing/specs/spec-security-reviews.md +++ b/apps/kilocode-docs/docs/contributing/architecture/security-reviews.md @@ -1,9 +1,9 @@ --- sidebar_position: 7 -title: "Spec: Agentic Security Reviews" +title: "Agentic Security Reviews" --- -# SPEC: Agentic Security Reviews +# Agentic Security Reviews ## Overview diff --git a/apps/kilocode-docs/docs/contributing/specs/spec-track-repo-url.md b/apps/kilocode-docs/docs/contributing/architecture/track-repo-url.md similarity index 96% rename from apps/kilocode-docs/docs/contributing/specs/spec-track-repo-url.md rename to apps/kilocode-docs/docs/contributing/architecture/track-repo-url.md index 26418fb45fd..03a3ea1b4b3 100644 --- a/apps/kilocode-docs/docs/contributing/specs/spec-track-repo-url.md +++ b/apps/kilocode-docs/docs/contributing/architecture/track-repo-url.md @@ -1,9 +1,9 @@ --- sidebar_position: 8 -title: "Spec: Track Usage by Repository URL" +title: "Track Usage by Repository URL" --- -# Spec: Track Usage by Project +# Track Usage by Project # Overview diff --git a/apps/kilocode-docs/docs/contributing/architecture/vercel-ai-gateway.md b/apps/kilocode-docs/docs/contributing/architecture/vercel-ai-gateway.md new file mode 100644 index 00000000000..09390a90913 --- /dev/null +++ b/apps/kilocode-docs/docs/contributing/architecture/vercel-ai-gateway.md @@ -0,0 +1,77 @@ +--- +sidebar_position: 9 +title: "Vercel AI Gateway" +--- + +# OpenRouter and Vercel AI Gateway API compatibility + +Both OpenRouter and Vercel AI Gateway provide an OpenAI-compatible API. +They are largely compatible and Vercel even adopted some of OpenRouter's non-standard extensions. + +OpenRouter API docs: https://openrouter.ai/docs/api/reference/overview + +Vercel AI Gateway API docs: https://vercel.com/docs/ai-gateway/openai-compat + +At time of writing, OpenRouter provides beta support for the Responses API, but Vercel does not: https://openrouter.ai/docs/api/reference/responses/overview + +## Available models and identifiers + +OpenRouter has more models than Vercel. The naming scheme is similar, sometimes identical but not always. For example `x-ai/grok-code-fast-1` (OpenRouter) has a different prefix from `xai/grok-code-fast-1` (Vercel). We will have to come up with a mapping from OpenRouter to Vercel model identifiers. + +- https://openrouter.ai/models +- https://vercel.com/ai-gateway/models + +## Reasoning + +Vercel seems to have adopted OpenRouter's (non-standard) reasoning configuration: + +- https://openrouter.ai/docs/api/reference/responses/reasoning#reasoning-configuration +- https://vercel.com/docs/ai-gateway/openai-compat#reasoning-configuration + +Both Vercel and OpenRouter use the same `reasoning` property for reasoning content (the standard is `reasoning_content`, although our extension will accept both): + +- https://openrouter.ai/docs/api/api-reference/chat/send-chat-completion-request#response.body.choices.message.reasoning +- https://vercel.com/docs/ai-gateway/openai-compat#response-format-with-reasoning + +Vercel supports OpenRouter's way of preserving reasoning details in the Chat Completions API: + +- https://openrouter.ai/docs/guides/best-practices/reasoning-tokens#preserving-reasoning-blocks +- https://vercel.com/docs/ai-gateway/openai-compat#preserving-reasoning-details-across-providers + +Other providers would require use of the Responses API (e.g. xAI) or Anthropic API (e.g. MiniMax) + +## Provider configuration + +OpenRouter's and Vercel's provider configuration are different: + +- https://openrouter.ai/docs/guides/routing/provider-selection +- https://vercel.com/docs/ai-gateway/openai-compat#provider-options + +We will likely support OpenRouter's and convert between the two. + +Inference provider identifiers appear similar at first glance, but they may not always be identical. + +## Cost calculation + +Whether Vercel includes cost in the response (like OpenRouter) is unclear. In the docs there's an embeddings example, which suggests that it does, but in a different format than OpenRouter: + +- https://vercel.com/docs/ai-gateway/openai-compat#embeddings + +We may have to estimate the cost in the extension instead. + +There's a generation endpoint, which looks very similar to OpenRouter's at first glance: + +- https://openrouter.ai/docs/api/api-reference/generations/get-generation +- https://vercel.com/docs/ai-gateway/usage#generation-lookup + +# Deciding where to route traffic + +We want to route some traffic to Vercel, ideally just enough so we can be first place on both leaderboards. However, we will initially start with a small portion of traffic < 5% and will evaluate whether it make sense to increase volume. + +Vercel will also act as fallback if we encounter issues with OpenRouter (such as the issue with Grok Code Fast and OpenRouter recently). We need the ability to route certain providers and / or models to Vercel vs OpenRouter. + +Requests from the same user for the same model should go to the same gateway for caching purposes. + +We can randomize users to a gateway in a way similar to what was done for autocomplete: https://github.com/Kilo-Org/kilocode/pull/3857 + +Since not all models are available on Vercel, some traffic will have to go to OpenRouter regardless. diff --git a/apps/kilocode-docs/docs/contributing/specs/spec-voice-transcription.md b/apps/kilocode-docs/docs/contributing/architecture/voice-transcription.md similarity index 98% rename from apps/kilocode-docs/docs/contributing/specs/spec-voice-transcription.md rename to apps/kilocode-docs/docs/contributing/architecture/voice-transcription.md index e32268f1aec..7595a1da479 100644 --- a/apps/kilocode-docs/docs/contributing/specs/spec-voice-transcription.md +++ b/apps/kilocode-docs/docs/contributing/architecture/voice-transcription.md @@ -1,9 +1,9 @@ --- sidebar_position: 10 -title: "Spec: Live Voice Transcription" +title: "Live Voice Transcription" --- -# SPEC: Live Voice Transcription +# Live Voice Transcription # Overview diff --git a/apps/kilocode-docs/docs/contributing/index.md b/apps/kilocode-docs/docs/contributing/index.md index 1e31899282a..811a90e7a9c 100644 --- a/apps/kilocode-docs/docs/contributing/index.md +++ b/apps/kilocode-docs/docs/contributing/index.md @@ -24,7 +24,7 @@ Setting Up the Development Environment is described in details on the [Developme ## Understanding the Architecture -Before diving into the code, we recommend reviewing the [Architecture Overview](/contributing/architecture) to understand how the different components of Kilo Code fit together. +Before diving into the code, we recommend reviewing the [Architecture Overview](architecture) to understand how the different components of Kilo Code fit together. ## Development Workflow @@ -90,7 +90,7 @@ Custom modes are a powerful way to extend Kilo Code's capabilities. To create an ## Engineering Specs -For larger features, we write engineering specs to align on requirements before implementation. Check out the [Engineering Specs](/contributing/specs) section to see planned features and learn how to contribute specs. +For larger features, we write engineering specs to align on requirements before implementation. Check out the [Architecture](/contributing/architecture) section to see planned features and learn how to contribute specs. ## Documentation Contributions diff --git a/apps/kilocode-docs/docs/contributing/specs/index.md b/apps/kilocode-docs/docs/contributing/specs/index.md deleted file mode 100644 index 9d9496f328b..00000000000 --- a/apps/kilocode-docs/docs/contributing/specs/index.md +++ /dev/null @@ -1,48 +0,0 @@ ---- -sidebar_position: 1 -title: "Engineering Specs" ---- - -# Engineering Specs - -Engineering specs are technical documents that describe how we plan to implement features and solve problems. They help us align on requirements, communicate progress, and document our architectural decisions. - -## Why Write Specs? - -As the company gets bigger and gains adoption, it's important to evolve how we work together. There are more teams and more stakeholders than ever, and with that, more opportunities for mis-communication and untimely disagreements. - -Writing specs for reasonably complicated projects has many benefits: - -- Improves clarity of implementation -- Reduces time to implementation - - Often times, after a spec is written, it's fed into an LLM to implement the changes -- Allows for discussion (and maybe some healthy bike shedding) prior to implementation - - Importantly, aligns on requirements prior to implementation -- Communicates upward and outward - - Helps leadership understand the progress of a project - - Helps teammates understand how various parts of our application is architected - -It is useful to start with an outline/template for specs. For that, refer to the [SPEC: Template](./spec-template.md) document. - -## Current Specs - -| Spec | Description | -| ----------------------------------------------------------------------- | ------------------------------------------ | -| [Enterprise MCP Controls](./spec-enterprise-mcp-controls.md) | Admin controls for MCP server allowlists | -| [Onboarding Improvements](./spec-onboarding-engagement-improvements.md) | User onboarding and engagement features | -| [Organization Modes Library](./spec-organization-modes-library.md) | Shared modes for teams and enterprise | -| [Agentic Security Reviews](./spec-security-reviews.md) | AI-powered security vulnerability analysis | -| [Track Repo URL](./spec-track-repo-url.md) | Usage tracking by repository/project | -| [Voice Transcription](./spec-voice-transcription.md) | Live voice input for chat | - -Private specs, for example backend non-user facing features, can be found on the [company handbook (Kilo internal)](https://handbook.kilo.ai/engineering/specs/why-specs). - -## Contributing a Spec - -If you're working on a significant feature, consider writing a spec: - -1. Copy the [Spec Template](./spec-template.md) -2. Fill in the sections with your proposal -3. Submit a PR for review -4. Discuss and iterate with the team -5. Once approved, create GitHub issues from the implementation plan diff --git a/apps/kilocode-docs/docusaurus.config.ts b/apps/kilocode-docs/docusaurus.config.ts index af7ad155037..e803d64b28d 100644 --- a/apps/kilocode-docs/docusaurus.config.ts +++ b/apps/kilocode-docs/docusaurus.config.ts @@ -97,6 +97,17 @@ const config: Config = { [ "@docusaurus/plugin-client-redirects", { + createRedirects(existingPath) { + // Redirect old /contributing/specs/spec-* paths to /contributing/architecture/* + if (existingPath.startsWith("/contributing/architecture/")) { + const filename = existingPath.replace("/contributing/architecture/", "") + return [ + `/contributing/specs/spec-${filename}`, // spec- prefix + `/contributing/specs/${filename}`, // without prefix + ] + } + return undefined + }, redirects: [ // Files moved from advanced-usage to features { diff --git a/apps/kilocode-docs/sidebars.ts b/apps/kilocode-docs/sidebars.ts index b15b3f92e36..fc416882e35 100644 --- a/apps/kilocode-docs/sidebars.ts +++ b/apps/kilocode-docs/sidebars.ts @@ -207,20 +207,24 @@ const sidebars: SidebarsConfig = { label: "Contributing", items: [ "contributing/index", - "contributing/architecture", "contributing/development-environment", { type: "category", - label: "Engineering Specs", + label: "Architecture", items: [ - "contributing/specs/index", - "contributing/specs/spec-template", - "contributing/specs/spec-enterprise-mcp-controls", - "contributing/specs/spec-onboarding-engagement-improvements", - "contributing/specs/spec-organization-modes-library", - "contributing/specs/spec-security-reviews", - "contributing/specs/spec-track-repo-url", - "contributing/specs/spec-voice-transcription", + { + type: "doc", + id: "contributing/architecture/index", + label: "Overview", + }, + "contributing/architecture/annual-billing", + "contributing/architecture/enterprise-mcp-controls", + "contributing/architecture/onboarding-engagement-improvements", + "contributing/architecture/organization-modes-library", + "contributing/architecture/security-reviews", + "contributing/architecture/track-repo-url", + "contributing/architecture/vercel-ai-gateway", + "contributing/architecture/voice-transcription", ], }, ], diff --git a/cli/CHANGELOG.md b/cli/CHANGELOG.md index d6b7890ff69..9e8cbf4ff42 100644 --- a/cli/CHANGELOG.md +++ b/cli/CHANGELOG.md @@ -1,5 +1,11 @@ # @kilocode/cli +## 0.19.1 + +### Patch Changes + +- [#4810](https://github.com/Kilo-Org/kilocode/pull/4810) [`2d8f5b4`](https://github.com/Kilo-Org/kilocode/commit/2d8f5b4f823750d22701d962ba27885b01f78acb) Thanks [@kiloconnect](https://github.com/apps/kiloconnect)! - Add `--append-system-prompt` CLI option to append custom instructions to the system prompt + ## 0.19.0 ### Minor Changes diff --git a/cli/package.dist.json b/cli/package.dist.json index 3e31186c1f4..6ef1d55840a 100644 --- a/cli/package.dist.json +++ b/cli/package.dist.json @@ -1,6 +1,6 @@ { "name": "@kilocode/cli", - "version": "0.19.0", + "version": "0.19.1", "description": "Terminal User Interface for Kilo Code", "type": "module", "main": "index.js", diff --git a/cli/package.json b/cli/package.json index 4e879581a9b..5c90ddba5c7 100644 --- a/cli/package.json +++ b/cli/package.json @@ -1,6 +1,6 @@ { "name": "@kilocode/cli", - "version": "0.19.0", + "version": "0.19.1", "description": "Terminal User Interface for Kilo Code", "type": "module", "main": "dist/index.js", diff --git a/src/package.json b/src/package.json index 6b9e7681e45..28d26e7f29b 100644 --- a/src/package.json +++ b/src/package.json @@ -3,7 +3,7 @@ "displayName": "%extension.displayName%", "description": "%extension.description%", "publisher": "kilocode", - "version": "4.142.0", + "version": "4.143.0", "icon": "assets/icons/logo-outline-black.png", "galleryBanner": { "color": "#FFFFFF", diff --git a/src/services/ghost/GhostServiceManager.ts b/src/services/ghost/GhostServiceManager.ts index 27bd7bfcdb5..a832399abf5 100644 --- a/src/services/ghost/GhostServiceManager.ts +++ b/src/services/ghost/GhostServiceManager.ts @@ -9,7 +9,6 @@ import { GhostServiceSettings, TelemetryEventName } from "@roo-code/types" import { ContextProxy } from "../../core/config/ContextProxy" import { TelemetryService } from "@roo-code/telemetry" import { ClineProvider } from "../../core/webview/ClineProvider" -import { getKiloCodeWrapperProperties } from "../../core/kilocode/wrapper" import { AutocompleteTelemetry } from "./classic-auto-complete/AutocompleteTelemetry" export class GhostServiceManager { @@ -75,18 +74,14 @@ export class GhostServiceManager { this.settings = ContextProxy.instance.getGlobalState("ghostServiceSettings") ?? { enableSmartInlineTaskKeybinding: true, } - // Auto-enable autocomplete by default, but disable for JetBrains IDEs - // JetBrains users can manually enable it if they want to test the feature + // Auto-enable autocomplete by default if (this.settings.enableAutoTrigger == undefined) { - const { kiloCodeWrapperJetbrains } = getKiloCodeWrapperProperties() - this.settings.enableAutoTrigger = !kiloCodeWrapperJetbrains + this.settings.enableAutoTrigger = true } - // Auto-enable chat autocomplete by default, but disable for JetBrains IDEs - // JetBrains users can manually enable it if they want to test the feature + // Auto-enable chat autocomplete by default if (this.settings.enableChatAutocomplete == undefined) { - const { kiloCodeWrapperJetbrains } = getKiloCodeWrapperProperties() - this.settings.enableChatAutocomplete = !kiloCodeWrapperJetbrains + this.settings.enableChatAutocomplete = true } await this.updateGlobalContext() diff --git a/src/services/ghost/__tests__/GhostServiceManager.spec.ts b/src/services/ghost/__tests__/GhostServiceManager.spec.ts index 70f1454515b..4f7bce75ca0 100644 --- a/src/services/ghost/__tests__/GhostServiceManager.spec.ts +++ b/src/services/ghost/__tests__/GhostServiceManager.spec.ts @@ -123,10 +123,6 @@ vi.mock("@roo-code/telemetry", () => ({ }, })) -vi.mock("../../../core/kilocode/wrapper", () => ({ - getKiloCodeWrapperProperties: () => ({ kiloCodeWrapperJetbrains: false }), -})) - vi.mock("../../../core/config/ContextProxy", () => { const state: Record = {} diff --git a/webview-ui/src/components/kilocode/settings/GhostServiceSettings.tsx b/webview-ui/src/components/kilocode/settings/GhostServiceSettings.tsx index d8b5f81f802..abc38cfdfcc 100644 --- a/webview-ui/src/components/kilocode/settings/GhostServiceSettings.tsx +++ b/webview-ui/src/components/kilocode/settings/GhostServiceSettings.tsx @@ -115,7 +115,7 @@ export const GhostServiceSettingsView = ({
-
{t("kilocode:ghost.settings.triggers")}
+
{t("kilocode:ghost.settings.codeEditorSuggestions")}
@@ -124,7 +124,7 @@ export const GhostServiceSettingsView = ({ {t("kilocode:ghost.settings.enableAutoTrigger.label")}
- + {t("kilocode:ghost.settings.enableAutoTrigger.description")}
{enableAutoTrigger && ( @@ -207,6 +207,13 @@ export const GhostServiceSettingsView = ({ )} +
+
+ +
{t("kilocode:ghost.settings.chatSuggestions")}
+
+
+
{ renderComponent() // Check that trigger settings are visible - expect(screen.getByText(/kilocode:ghost.settings.triggers/)).toBeInTheDocument() + expect(screen.getByText(/kilocode:ghost.settings.codeEditorSuggestions/)).toBeInTheDocument() expect(screen.getByText(/kilocode:ghost.settings.enableAutoTrigger.label/)).toBeInTheDocument() }) diff --git a/webview-ui/src/i18n/locales/ar/kilocode.json b/webview-ui/src/i18n/locales/ar/kilocode.json index 8d63f95b432..42157008def 100644 --- a/webview-ui/src/i18n/locales/ar/kilocode.json +++ b/webview-ui/src/i18n/locales/ar/kilocode.json @@ -218,34 +218,32 @@ "ghost": { "title": "Autocomplete", "settings": { - "triggers": "المشغلات", - "keybindingDescription": "يمكن تشغيل ميزات الإكمال التلقائي بواسطة الأوامر. يمكنك تكوين اختصارات لوحة المفاتيح هنا.", + "codeEditorSuggestions": "اقتراحات محرر الكود", + "chatSuggestions": "اقتراحات الدردشة", + "model": "النموذج", + "provider": "المزود", "enableAutoTrigger": { - "label": "تمكين الإكمال التلقائي", - "description": "عند التمكين، سيقوم Kilo Code بتشغيل الإكمال التلقائي تلقائياً عندما تتوقف عن الكتابة. يمكن أن يكون هذا مفيداً للإصلاحات السريعة والاقتراحات." + "label": "تفعيل الاقتراحات تلقائياً", + "description": "عرض اقتراحات الكود المضمنة تلقائيًا عند التوقف عن الكتابة." }, "autoTriggerDelay": { "label": "تأخير التشغيل التلقائي", - "description": "التأخير بالثواني قبل أن يقوم Kilo Code بتشغيل الإكمال التلقائي بعد توقفك عن الكتابة. التأخير الأقصر يعني اقتراحات أسرع، لكن قد يكون أكثر استهلاكاً للموارد." + "description": "التأخير بالثواني قبل ظهور الاقتراحات بعد التوقف عن الكتابة. التأخير الأقصر يعني اقتراحات أسرع، لكن قد يكون أكثر استهلاكاً للموارد." }, "enableSmartInlineTaskKeybinding": { - "label": "الإكمال التلقائي اليدوي ({{keybinding}})", - "description": "تحتاج إصلاحاً سريعاً أو إكمالاً أو إعادة هيكلة؟ سيستخدم Kilo السياق المحيط لتقديم تحسينات فورية، مما يبقيك في التدفق. عرض الاختصار" + "label": "التفعيل باختصار لوحة المفاتيح ({{keybinding}})", + "description": "اضغط {{keybinding}} لطلب اقتراح كود عند موضع المؤشر. تعديل الاختصار" }, - "keybindingNotFound": "غير موجود", - "configureAutocompleteProfile": "استخدم أي نموذج بالانتقال إلى الملفات الشخصية وتكوين ملف شخصي من نوع الإكمال التلقائي.", - "model": "النموذج", - "provider": "المزود", "enableChatAutocomplete": { - "label": "الإكمال التلقائي لمدخلات الدردشة", - "description": "عند التفعيل، سيقترح Kilo Code إكمالات أثناء كتابتك في مدخل الدردشة. اضغط على Tab لقبول الاقتراحات." + "label": "تفعيل الإكمال التلقائي للدردشة", + "description": "عرض الإكمالات أثناء الكتابة في مدخل الدردشة. اضغط Tab لقبول الاقتراحات." }, "snooze": { - "label": "تأجيل الإكمال التلقائي", - "description": "إيقاف اقتراحات الإكمال التلقائي مؤقتاً لفترة محددة.", + "label": "تأجيل الاقتراحات", + "description": "إيقاف الاقتراحات مؤقتاً لفترة محددة.", "button": "تأجيل", "unsnooze": "إلغاء التأجيل", - "currentlySnoozed": "الإكمال التلقائي مؤجل حالياً.", + "currentlySnoozed": "الاقتراحات مؤجلة حالياً.", "duration": { "1min": "دقيقة واحدة", "5min": "5 دقائق", @@ -263,7 +261,9 @@ "title": "لا يوجد رصيد في حسابك", "description": "حساب Kilo Code الخاص بك لا يحتوي على رصيد. لاستخدام الإكمال التلقائي، يرجى إضافة رصيد إلى حسابك.", "buyCredits": "شراء رصيد ←" - } + }, + "keybindingNotFound": "غير موجود", + "configureAutocompleteProfile": "استخدم أي نموذج بالانتقال إلى الملفات الشخصية وتكوين ملف شخصي من نوع الإكمال التلقائي." } }, "virtualProvider": { diff --git a/webview-ui/src/i18n/locales/ca/kilocode.json b/webview-ui/src/i18n/locales/ca/kilocode.json index b7039db051f..3af8943267f 100644 --- a/webview-ui/src/i18n/locales/ca/kilocode.json +++ b/webview-ui/src/i18n/locales/ca/kilocode.json @@ -209,7 +209,8 @@ "ghost": { "title": "Autocomplete", "settings": { - "triggers": "Activadors", + "codeEditorSuggestions": "Suggeriments de l'Editor de Codi", + "chatSuggestions": "Suggeriments del Xat", "keybindingDescription": "Les funcionalitats d'Autocomplete es poden activar mitjançant ordres. Pots configurar les Dreceres de Teclat aquí.", "enableAutoTrigger": { "label": "Habilitar Autocomplete", diff --git a/webview-ui/src/i18n/locales/cs/kilocode.json b/webview-ui/src/i18n/locales/cs/kilocode.json index df6d66add15..37d347978af 100644 --- a/webview-ui/src/i18n/locales/cs/kilocode.json +++ b/webview-ui/src/i18n/locales/cs/kilocode.json @@ -223,34 +223,32 @@ "ghost": { "title": "Autocomplete", "settings": { - "triggers": "Spouštěče", - "keybindingDescription": "Funkce Autocomplete lze spustit pomocí příkazů. Můžeš nakonfigurovat Klávesové Zkratky zde.", "enableAutoTrigger": { - "label": "Povolit Autocomplete", - "description": "Když je povoleno, Kilo Code automaticky spustí Autocomplete, když přestaneš psát. To může být užitečné pro rychlé opravy a návrhy." + "label": "Auto-trigger Suggestions", + "description": "Automaticky zobrazovat návrhy kódu při pozastavení psaní." }, "autoTriggerDelay": { "label": "Zpoždění Automatického Spuštění", - "description": "Zpoždění v sekundách před tím, než Kilo Code spustí Autocomplete poté, co přestaneš psát. Kratší zpoždění znamená rychlejší návrhy, ale může být náročnější na zdroje." + "description": "The delay in seconds before suggestions appear after you pause typing. A shorter delay means quicker suggestions, but may be more resource-intensive." }, "enableSmartInlineTaskKeybinding": { - "label": "Ruční dokončování ({{keybinding}})", - "description": "Potřebuješ rychlou opravu, dokončení nebo refaktoring? Kilo použije okolní kontext k nabídnutí okamžitých vylepšení, udržujíc tě v toku. Zobrazit zkratku" + "label": "Trigger on Keybinding ({{keybinding}})", + "description": "Press {{keybinding}} to request a code suggestion at your cursor position. Edit shortcut" }, "keybindingNotFound": "nenalezeno", "configureAutocompleteProfile": "Použij libovolný model tak, že přejdeš do profilů a nakonfiguruješ Profil typu Automatické dokončování.", "model": "Model", "provider": "Poskytovatel", "enableChatAutocomplete": { - "label": "Automatické doplňování při psaní zpráv", - "description": "Když je tato funkce povolena, Kilo Code bude navrhovat dokončování textu během psaní ve vstupním poli chatu. Stisknutím klávesy Tab přijmete návrhy." + "label": "Enable Chat Autocomplete", + "description": "Show completions as you type in the chat input. Press Tab to accept suggestions." }, "snooze": { - "label": "Pozastavit Autocomplete", - "description": "Dočasně pozastaví návrhy automatického dokončování na zadanou dobu.", + "label": "Snooze Suggestions", + "description": "Temporarily pause suggestions for a specified duration.", "button": "Pozastavit", "unsnooze": "Obnovit", - "currentlySnoozed": "Autocomplete je momentálně pozastaveno.", + "currentlySnoozed": "Suggestions are currently snoozed.", "duration": { "1min": "1 minuta", "5min": "5 minut", @@ -268,7 +266,9 @@ "title": "Na vašem účtu nejsou žádné kredity", "description": "Váš účet Kilo Code nemá žádné kredity. Pro použití automatického dokončování prosím přidejte kredity na svůj účet.", "buyCredits": "Koupit kredity →" - } + }, + "codeEditorSuggestions": "Code Editor Suggestions", + "chatSuggestions": "Chat Suggestions" } }, "virtualProvider": { diff --git a/webview-ui/src/i18n/locales/de/kilocode.json b/webview-ui/src/i18n/locales/de/kilocode.json index 2a16c2ddb18..02cee224b37 100644 --- a/webview-ui/src/i18n/locales/de/kilocode.json +++ b/webview-ui/src/i18n/locales/de/kilocode.json @@ -216,33 +216,32 @@ "ghost": { "title": "Autocomplete", "settings": { - "triggers": "Auslöser", "model": "Modell", "provider": "Provider", "enableAutoTrigger": { - "label": "Pausieren zum Vervollständigen", - "description": "Wenn aktiviert, löst Kilo Code automatisch Autocomplete aus, wenn du aufhörst zu tippen. Dies kann für schnelle Korrekturen und Vorschläge nützlich sein." + "label": "Auto-trigger Suggestions", + "description": "Zeigt automatisch Inline-Code-Vorschläge an, wenn Sie beim Tippen pausieren." }, "autoTriggerDelay": { "label": "Auto-Auslöseverzögerung", - "description": "Die Verzögerung in Sekunden, bevor Kilo Code Autocomplete auslöst, nachdem du aufgehört hast zu tippen. Eine kürzere Verzögerung bedeutet schnellere Vorschläge, kann aber ressourcenintensiver sein." + "description": "The delay in seconds before suggestions appear after you pause typing. A shorter delay means quicker suggestions, but may be more resource-intensive." }, "enableSmartInlineTaskKeybinding": { - "label": "Manuelle Autovervollständigung ({{keybinding}})", - "description": "Brauchst du eine schnelle Korrektur, Vervollständigung oder Refaktorierung? Kilo wird den umgebenden Kontext nutzen, um sofortige Verbesserungen anzubieten und dich im Flow zu halten. Tastenkombination bearbeiten" + "label": "Trigger on Keybinding ({{keybinding}})", + "description": "Press {{keybinding}} to request a code suggestion at your cursor position. Edit shortcut" }, "keybindingNotFound": "nicht gefunden", "configureAutocompleteProfile": "Verwende ein beliebiges Modell, indem du zu Profilen gehst und ein Profil vom Profiltyp Autocomplete konfigurierst.", "enableChatAutocomplete": { - "label": "Chat-Eingabe-Autovervollständigung", - "description": "Wenn aktiviert, wird Kilo Code Vervollständigungen vorschlagen, während Sie im Chat-Eingabefeld tippen. Drücken Sie Tab, um Vorschläge zu akzeptieren." + "label": "Enable Chat Autocomplete", + "description": "Show completions as you type in the chat input. Press Tab to accept suggestions." }, "snooze": { - "label": "Autocomplete pausieren", - "description": "Autocomplete-Vorschläge vorübergehend für eine bestimmte Dauer pausieren.", + "label": "Snooze Suggestions", + "description": "Temporarily pause suggestions for a specified duration.", "button": "Pausieren", "unsnooze": "Fortsetzen", - "currentlySnoozed": "Autocomplete ist derzeit pausiert.", + "currentlySnoozed": "Suggestions are currently snoozed.", "duration": { "1min": "1 Minute", "5min": "5 Minuten", @@ -260,7 +259,9 @@ "title": "Kein Guthaben auf deinem Konto", "description": "Dein Kilo Code Konto hat kein Guthaben. Um Autocomplete zu nutzen, füge bitte Guthaben zu deinem Konto hinzu.", "buyCredits": "Guthaben kaufen →" - } + }, + "codeEditorSuggestions": "Code Editor Suggestions", + "chatSuggestions": "Chat Suggestions" } }, "virtualProvider": { diff --git a/webview-ui/src/i18n/locales/en/kilocode.json b/webview-ui/src/i18n/locales/en/kilocode.json index 60f3fa0ddf4..dfe8830801c 100644 --- a/webview-ui/src/i18n/locales/en/kilocode.json +++ b/webview-ui/src/i18n/locales/en/kilocode.json @@ -230,31 +230,32 @@ "ghost": { "title": "Autocomplete", "settings": { - "triggers": "Triggers", + "codeEditorSuggestions": "Code Editor Suggestions", + "chatSuggestions": "Chat Suggestions", "model": "Model", "provider": "Provider", "enableAutoTrigger": { - "label": "Pause to Complete", - "description": "When enabled, Kilo Code will automatically trigger Autocomplete when you pause typing. This can be useful for quick fixes and suggestions." + "label": "Auto-trigger Suggestions", + "description": "Automatically show inline code suggestions when you pause typing." }, "autoTriggerDelay": { "label": "Auto Trigger Delay", - "description": "The delay in seconds before Kilo Code triggers Autocomplete after you pause typing. A shorter delay means quicker suggestions, but may be more resource-intensive." + "description": "The delay in seconds before suggestions appear after you pause typing. A shorter delay means quicker suggestions, but may be more resource-intensive." }, "enableSmartInlineTaskKeybinding": { - "label": "Manual Autocomplete ({{keybinding}})", - "description": "Need a quick fix, completion, or refactor? Kilo will use the surrounding context to offer immediate improvements, keeping you in the flow. Edit shortcut" + "label": "Trigger on Keybinding ({{keybinding}})", + "description": "Press {{keybinding}} to request a code suggestion at your cursor position. Edit shortcut" }, "enableChatAutocomplete": { - "label": "Chat Input Autocomplete", - "description": "When enabled, Kilo Code will suggest completions as you type in the chat input. Press Tab to accept suggestions." + "label": "Enable Chat Autocomplete", + "description": "Show completions as you type in the chat input. Press Tab to accept suggestions." }, "snooze": { - "label": "Snooze Autocomplete", - "description": "Temporarily pause autocomplete suggestions for a specified duration.", + "label": "Snooze Suggestions", + "description": "Temporarily pause suggestions for a specified duration.", "button": "Snooze", "unsnooze": "Unsnooze", - "currentlySnoozed": "Autocomplete is currently snoozed.", + "currentlySnoozed": "Suggestions are currently snoozed.", "duration": { "1min": "1 minute", "5min": "5 minutes", diff --git a/webview-ui/src/i18n/locales/es/kilocode.json b/webview-ui/src/i18n/locales/es/kilocode.json index 3aceb14fa96..a16a1f5e8f6 100644 --- a/webview-ui/src/i18n/locales/es/kilocode.json +++ b/webview-ui/src/i18n/locales/es/kilocode.json @@ -216,34 +216,32 @@ "ghost": { "title": "Autocomplete", "settings": { - "triggers": "Activadores", - "keybindingDescription": "Las funciones de Autocomplete pueden activarse mediante comandos. Puedes configurar los Atajos de Teclado aquí.", "enableAutoTrigger": { - "label": "Pausar para Completar", - "description": "Cuando está habilitado, Kilo Code activará automáticamente Autocomplete cuando dejes de escribir. Esto puede ser útil para correcciones rápidas y sugerencias." + "label": "Auto-trigger Suggestions", + "description": "Mostrar automáticamente sugerencias de código en línea cuando dejas de escribir." }, "autoTriggerDelay": { "label": "Retraso de Activación Automática", - "description": "El retraso en segundos antes de que Kilo Code active Autocomplete después de que dejes de escribir. Un retraso más corto significa sugerencias más rápidas, pero puede ser más intensivo en recursos." + "description": "The delay in seconds before suggestions appear after you pause typing. A shorter delay means quicker suggestions, but may be more resource-intensive." }, "enableSmartInlineTaskKeybinding": { - "label": "Autocompletado Manual ({{keybinding}})", - "description": "¿Necesitas una corrección rápida, completado o refactorización? Kilo usará el contexto circundante para ofrecer mejoras inmediatas, manteniéndote en el flujo. Editar atajo" + "label": "Trigger on Keybinding ({{keybinding}})", + "description": "Press {{keybinding}} to request a code suggestion at your cursor position. Edit shortcut" }, "keybindingNotFound": "no encontrado", "configureAutocompleteProfile": "Usa cualquier modelo yendo a perfiles y configurando un Perfil del Tipo de Perfil Autocompletado.", "model": "Modelo", "provider": "Proveedor", "enableChatAutocomplete": { - "description": "Cuando está habilitado, Kilo Code sugerirá completaciones mientras escribes en el campo de chat. Presiona Tab para aceptar las sugerencias.", - "label": "Autocompletado de Entrada de Chat" + "description": "Show completions as you type in the chat input. Press Tab to accept suggestions.", + "label": "Enable Chat Autocomplete" }, "snooze": { - "label": "Posponer Autocompletado", - "description": "Pausar temporalmente las sugerencias de autocompletado durante un tiempo especificado.", + "label": "Snooze Suggestions", + "description": "Temporarily pause suggestions for a specified duration.", "button": "Posponer", "unsnooze": "Reactivar", - "currentlySnoozed": "El autocompletado está actualmente pospuesto.", + "currentlySnoozed": "Suggestions are currently snoozed.", "duration": { "1min": "1 minuto", "5min": "5 minutos", @@ -261,7 +259,9 @@ "title": "No hay créditos en tu cuenta", "description": "Tu cuenta de Kilo Code no tiene créditos. Para usar el autocompletado, por favor añade créditos a tu cuenta.", "buyCredits": "Comprar créditos →" - } + }, + "codeEditorSuggestions": "Code Editor Suggestions", + "chatSuggestions": "Chat Suggestions" } }, "virtualProvider": { diff --git a/webview-ui/src/i18n/locales/fr/kilocode.json b/webview-ui/src/i18n/locales/fr/kilocode.json index 41d9fb9e973..4b98de6ddb4 100644 --- a/webview-ui/src/i18n/locales/fr/kilocode.json +++ b/webview-ui/src/i18n/locales/fr/kilocode.json @@ -223,34 +223,32 @@ "ghost": { "title": "Autocomplete", "settings": { - "triggers": "Déclencheurs", - "keybindingDescription": "Les fonctionnalités Autocomplete peuvent être déclenchées par des commandes. Tu peux configurer les Raccourcis Clavier ici.", "enableAutoTrigger": { - "label": "Pause pour Compléter", - "description": "Quand activé, Kilo Code déclenchera automatiquement Autocomplete quand tu arrêtes de taper. Cela peut être utile pour des corrections rapides et des suggestions." + "label": "Auto-trigger Suggestions", + "description": "Afficher automatiquement des suggestions de code en ligne lorsque vous faites une pause dans la saisie." }, "autoTriggerDelay": { "label": "Délai de Déclenchement Automatique", - "description": "Le délai en secondes avant que Kilo Code déclenche Autocomplete après que tu aies arrêté de taper. Un délai plus court signifie des suggestions plus rapides, mais peut être plus intensif en ressources." + "description": "The delay in seconds before suggestions appear after you pause typing. A shorter delay means quicker suggestions, but may be more resource-intensive." }, "enableSmartInlineTaskKeybinding": { - "label": "Saisie automatique manuelle ({{keybinding}})", - "description": "Besoin d'une correction rapide, d'un complément ou d'une refactorisation ? Kilo utilisera le contexte environnant pour offrir des améliorations immédiates, te gardant dans le flux. Modifier le raccourci" + "label": "Trigger on Keybinding ({{keybinding}})", + "description": "Press {{keybinding}} to request a code suggestion at your cursor position. Edit shortcut" }, "keybindingNotFound": "introuvable", "configureAutocompleteProfile": "Utilise n'importe quel modèle en allant dans les profils et en configurant un Profil du Type de Profil Autocomplétion.", "model": "Modèle", "provider": "Fournisseur", "enableChatAutocomplete": { - "label": "Saisie automatique de discussion", - "description": "Lorsqu'il est activé, Kilo Code proposera des suggestions de complétion pendant que vous tapez dans le champ de discussion. Appuyez sur Tab pour accepter les suggestions." + "label": "Enable Chat Autocomplete", + "description": "Show completions as you type in the chat input. Press Tab to accept suggestions." }, "snooze": { - "label": "Mettre en pause l'autocomplétion", - "description": "Suspendre temporairement les suggestions d'autocomplétion pour une durée spécifiée.", + "label": "Snooze Suggestions", + "description": "Temporarily pause suggestions for a specified duration.", "button": "Mettre en pause", "unsnooze": "Réactiver", - "currentlySnoozed": "L'autocomplétion est actuellement en pause.", + "currentlySnoozed": "Suggestions are currently snoozed.", "duration": { "1min": "1 minute", "5min": "5 minutes", @@ -268,7 +266,9 @@ "title": "Aucun crédit sur votre compte", "description": "Votre compte Kilo Code n'a pas de crédits. Pour utiliser l'autocomplétion, veuillez ajouter des crédits à votre compte.", "buyCredits": "Acheter des crédits →" - } + }, + "codeEditorSuggestions": "Code Editor Suggestions", + "chatSuggestions": "Chat Suggestions" } }, "virtualProvider": { diff --git a/webview-ui/src/i18n/locales/hi/kilocode.json b/webview-ui/src/i18n/locales/hi/kilocode.json index c829e2f380d..2f6198c2570 100644 --- a/webview-ui/src/i18n/locales/hi/kilocode.json +++ b/webview-ui/src/i18n/locales/hi/kilocode.json @@ -209,34 +209,32 @@ "ghost": { "title": "Autocomplete", "settings": { - "triggers": "ट्रिगर्स", - "keybindingDescription": "Autocomplete सुविधाओं को कमांड द्वारा ट्रिगर किया जा सकता है। आप कीबोर्ड शॉर्टकट यहाँ कॉन्फ़िगर कर सकते हैं।", "enableAutoTrigger": { - "label": "Autocomplete सक्षम करें", - "description": "जब सक्षम हो, तो Kilo Code आपके टाइपिंग बंद करने पर स्वचालित रूप से Autocomplete ट्रिगर करेगा। यह त्वरित सुधार और सुझावों के लिए उपयोगी हो सकता है।" + "label": "Auto-trigger Suggestions", + "description": "टाइपिंग रोकने पर स्वचालित रूप से इनलाइन कोड सुझाव दिखाएं।" }, "autoTriggerDelay": { "label": "ऑटो ट्रिगर देरी", - "description": "आपके टाइपिंग बंद करने के बाद Kilo Code के Autocomplete ट्रिगर करने से पहले सेकंड में देरी। कम देरी का मतलब तेज़ सुझाव है, लेकिन अधिक संसाधन-गहन हो सकता है।" + "description": "The delay in seconds before suggestions appear after you pause typing. A shorter delay means quicker suggestions, but may be more resource-intensive." }, "enableSmartInlineTaskKeybinding": { - "label": "मैनुअल ऑटोकंप्लीट ({{keybinding}})", - "description": "त्वरित सुधार, पूर्णता, या रिफैक्टरिंग चाहिए? Kilo आसपास के संदर्भ का उपयोग करके तत्काल सुधार प्रदान करेगा, आपको प्रवाह में रखते हुए। शॉर्टकट देखें" + "label": "Trigger on Keybinding ({{keybinding}})", + "description": "Press {{keybinding}} to request a code suggestion at your cursor position. Edit shortcut" }, "keybindingNotFound": "नहीं मिला", "configureAutocompleteProfile": "प्रोफाइल में जाकर और ऑटोकम्पलीट प्रोफाइल टाइप की एक प्रोफाइल कॉन्फ़िगर करके किसी भी मॉडल का उपयोग करें।", "model": "मॉडल", "provider": "प्रदाता", "enableChatAutocomplete": { - "label": "चैट इनपुट स्वतःपूर्ण", - "description": "जब सक्षम होता है, Kilo Code चैट इनपुट में टाइप करते समय पूर्णताएं सुझाएगा। सुझावों को स्वीकार करने के लिए Tab दबाएं।" + "label": "Enable Chat Autocomplete", + "description": "Show completions as you type in the chat input. Press Tab to accept suggestions." }, "snooze": { - "label": "Autocomplete स्नूज़ करें", - "description": "निर्दिष्ट अवधि के लिए Autocomplete सुझावों को अस्थायी रूप से रोकें।", + "label": "Snooze Suggestions", + "description": "Temporarily pause suggestions for a specified duration.", "button": "स्नूज़", "unsnooze": "अनस्नूज़", - "currentlySnoozed": "Autocomplete वर्तमान में स्नूज़ है।", + "currentlySnoozed": "Suggestions are currently snoozed.", "duration": { "1min": "1 मिनट", "5min": "5 मिनट", @@ -254,7 +252,9 @@ "title": "आपके खाते में कोई क्रेडिट नहीं है", "description": "आपके Kilo Code खाते में कोई क्रेडिट नहीं है। ऑटोकम्पलीट का उपयोग करने के लिए, कृपया अपने खाते में क्रेडिट जोड़ें।", "buyCredits": "क्रेडिट खरीदें →" - } + }, + "codeEditorSuggestions": "Code Editor Suggestions", + "chatSuggestions": "Chat Suggestions" } }, "virtualProvider": { diff --git a/webview-ui/src/i18n/locales/id/kilocode.json b/webview-ui/src/i18n/locales/id/kilocode.json index 70778e24f3e..6b6202f2074 100644 --- a/webview-ui/src/i18n/locales/id/kilocode.json +++ b/webview-ui/src/i18n/locales/id/kilocode.json @@ -209,34 +209,32 @@ "ghost": { "title": "Autocomplete", "settings": { - "triggers": "Pemicu", - "keybindingDescription": "Fitur Autocomplete dapat dipicu oleh perintah. Anda dapat mengonfigurasi Pintasan Keyboard di sini.", "enableAutoTrigger": { - "label": "Aktifkan Autocomplete", - "description": "Ketika diaktifkan, Kilo Code akan secara otomatis memicu Autocomplete saat Anda berhenti mengetik. Ini dapat berguna untuk perbaikan cepat dan saran." + "label": "Auto-trigger Suggestions", + "description": "Secara otomatis menampilkan saran kode inline saat Anda berhenti mengetik." }, "autoTriggerDelay": { "label": "Penundaan Pemicu Otomatis", - "description": "Penundaan dalam detik sebelum Kilo Code memicu Autocomplete setelah Anda berhenti mengetik. Penundaan yang lebih pendek berarti saran yang lebih cepat, tetapi mungkin lebih intensif sumber daya." + "description": "The delay in seconds before suggestions appear after you pause typing. A shorter delay means quicker suggestions, but may be more resource-intensive." }, "enableSmartInlineTaskKeybinding": { - "label": "Pelengkapan Otomatis Manual ({{keybinding}})", - "description": "Perlu perbaikan cepat, penyelesaian, atau refaktor? Kilo akan menggunakan konteks sekitar untuk menawarkan perbaikan langsung, menjaga Anda tetap dalam alur. Lihat pintasan" + "label": "Trigger on Keybinding ({{keybinding}})", + "description": "Press {{keybinding}} to request a code suggestion at your cursor position. Edit shortcut" }, "keybindingNotFound": "tidak ditemukan", "configureAutocompleteProfile": "Gunakan model apa pun dengan pergi ke profil dan mengonfigurasi Profil dengan Tipe Profil Autocomplete.", "model": "Model", "provider": "Penyedia", "enableChatAutocomplete": { - "description": "Jika diaktifkan, Kilo Code akan menyarankan pelengkapan saat Anda mengetik di kotak obrolan. Tekan Tab untuk menerima saran.", - "label": "Pelengkapan Otomatis Input Obrolan" + "description": "Show completions as you type in the chat input. Press Tab to accept suggestions.", + "label": "Enable Chat Autocomplete" }, "snooze": { - "label": "Tunda Autocomplete", - "description": "Jeda sementara saran autocomplete untuk durasi tertentu.", + "label": "Snooze Suggestions", + "description": "Temporarily pause suggestions for a specified duration.", "button": "Tunda", "unsnooze": "Aktifkan Kembali", - "currentlySnoozed": "Autocomplete sedang ditunda.", + "currentlySnoozed": "Suggestions are currently snoozed.", "duration": { "1min": "1 menit", "5min": "5 menit", @@ -254,7 +252,9 @@ "title": "Tidak ada kredit di akun Anda", "description": "Akun Kilo Code Anda tidak memiliki kredit. Untuk menggunakan autocomplete, silakan tambahkan kredit ke akun Anda.", "buyCredits": "Beli kredit →" - } + }, + "codeEditorSuggestions": "Code Editor Suggestions", + "chatSuggestions": "Chat Suggestions" } }, "virtualProvider": { diff --git a/webview-ui/src/i18n/locales/it/kilocode.json b/webview-ui/src/i18n/locales/it/kilocode.json index bdce91e537f..4dd8c125d20 100644 --- a/webview-ui/src/i18n/locales/it/kilocode.json +++ b/webview-ui/src/i18n/locales/it/kilocode.json @@ -216,7 +216,8 @@ "ghost": { "title": "Autocomplete", "settings": { - "triggers": "Trigger", + "codeEditorSuggestions": "Suggerimenti Editor di Codice", + "chatSuggestions": "Suggerimenti Chat", "keybindingDescription": "Le funzionalità Autocomplete possono essere attivate tramite comandi. Puoi configurare le Scorciatoie da Tastiera qui.", "enableAutoTrigger": { "label": "Pausa per Completare", diff --git a/webview-ui/src/i18n/locales/ja/kilocode.json b/webview-ui/src/i18n/locales/ja/kilocode.json index e91721610c5..18276252df4 100644 --- a/webview-ui/src/i18n/locales/ja/kilocode.json +++ b/webview-ui/src/i18n/locales/ja/kilocode.json @@ -223,7 +223,8 @@ "ghost": { "title": "Autocomplete", "settings": { - "triggers": "トリガー", + "codeEditorSuggestions": "コードエディタの提案", + "chatSuggestions": "チャットの提案", "keybindingDescription": "Autocomplete機能はコマンドでトリガーできます。キーボードショートカットはこちらで設定できます。", "enableAutoTrigger": { "label": "Autocompleteを有効にする", diff --git a/webview-ui/src/i18n/locales/ko/kilocode.json b/webview-ui/src/i18n/locales/ko/kilocode.json index 4458a5c535a..b5ddb6a6179 100644 --- a/webview-ui/src/i18n/locales/ko/kilocode.json +++ b/webview-ui/src/i18n/locales/ko/kilocode.json @@ -223,34 +223,32 @@ "ghost": { "title": "Autocomplete", "settings": { - "triggers": "트리거", - "keybindingDescription": "Autocomplete 기능은 명령으로 트리거할 수 있습니다. 키보드 단축키를 여기서 구성할 수 있습니다.", "enableAutoTrigger": { - "label": "Autocomplete 활성화", - "description": "활성화되면 타이핑을 멈췄을 때 Kilo Code가 자동으로 Autocomplete를 트리거합니다. 빠른 수정과 제안에 유용할 수 있습니다." + "label": "Auto-trigger Suggestions", + "description": "입력을 멈추면 자동으로 인라인 코드 제안을 표시합니다." }, "autoTriggerDelay": { "label": "자동 트리거 지연", - "description": "타이핑을 멈춘 후 Kilo Code가 Autocomplete를 트리거하기까지의 초 단위 지연. 지연이 짧을수록 제안이 빨라지지만 리소스를 더 많이 사용할 수 있습니다." + "description": "The delay in seconds before suggestions appear after you pause typing. A shorter delay means quicker suggestions, but may be more resource-intensive." }, "enableSmartInlineTaskKeybinding": { - "label": "수동 자동완성({{keybinding}})", - "description": "빠른 수정, 완성 또는 리팩토링이 필요하신가요? Kilo가 주변 컨텍스트를 사용하여 즉각적인 개선사항을 제공하여 플로우를 유지합니다. 단축키 보기" + "label": "Trigger on Keybinding ({{keybinding}})", + "description": "Press {{keybinding}} to request a code suggestion at your cursor position. Edit shortcut" }, "keybindingNotFound": "찾을 수 없음", "configureAutocompleteProfile": "프로필로 이동하여 프로필 유형이 자동완성인 프로필을 구성하면 모든 모델을 사용할 수 있습니다.", "model": "모델", "provider": "제공자", "enableChatAutocomplete": { - "label": "채팅 입력 자동완성", - "description": "활성화되면, Kilo Code는 채팅 입력 시 입력하는 대로 완성 제안을 제공합니다. Tab 키를 눌러 제안을 수락하세요." + "label": "Enable Chat Autocomplete", + "description": "Show completions as you type in the chat input. Press Tab to accept suggestions." }, "snooze": { - "label": "자동완성 일시 중지", - "description": "지정된 시간 동안 자동완성 제안을 일시적으로 중지합니다.", + "label": "Snooze Suggestions", + "description": "Temporarily pause suggestions for a specified duration.", "button": "일시 중지", "unsnooze": "일시 중지 해제", - "currentlySnoozed": "자동완성이 현재 일시 중지되어 있습니다.", + "currentlySnoozed": "Suggestions are currently snoozed.", "duration": { "1min": "1분", "5min": "5분", @@ -268,7 +266,9 @@ "title": "계정에 크레딧이 없습니다", "description": "Kilo Code 계정에 크레딧이 없습니다. 자동완성을 사용하려면 계정에 크레딧을 추가하세요.", "buyCredits": "크레딧 구매 →" - } + }, + "codeEditorSuggestions": "Code Editor Suggestions", + "chatSuggestions": "Chat Suggestions" } }, "virtualProvider": { diff --git a/webview-ui/src/i18n/locales/nl/kilocode.json b/webview-ui/src/i18n/locales/nl/kilocode.json index 27df5870f22..3e88c7025f4 100644 --- a/webview-ui/src/i18n/locales/nl/kilocode.json +++ b/webview-ui/src/i18n/locales/nl/kilocode.json @@ -50,7 +50,6 @@ "title": "Provider Routing", "managedByOrganization": "Beheer Provider Routing op organisatieniveau", "createOrganization": "Maak organisatie aan om Provider Routing te beheren", - "description": "Kilo Code routeert verzoeken naar de beste beschikbare providers voor uw model. Standaard worden verzoeken verdeeld over de beste providers om de uptime te maximaliseren. U kunt echter een specifieke provider kiezen om voor dit model te gebruiken.", "sorting": { "default": "Standaard provider sortering", "price": "Voorkeur voor providers met lagere prijs", @@ -223,34 +222,32 @@ "ghost": { "title": "Autocomplete", "settings": { - "triggers": "Triggers", - "keybindingDescription": "Autocomplete-functies kunnen worden geactiveerd door commando's. Je kunt de Toetsenbordsnelkoppelingen hier configureren.", + "codeEditorSuggestions": "Code Editor Suggesties", + "chatSuggestions": "Chat Suggesties", + "model": "Model", + "provider": "Provider", "enableAutoTrigger": { - "label": "Pauze om te Voltooien", - "description": "Wanneer ingeschakeld, zal Kilo Code automatisch Autocomplete activeren wanneer je stopt met typen. Dit kan nuttig zijn voor snelle fixes en suggesties." + "label": "Automatisch Suggesties Activeren", + "description": "Toon automatisch inline code-suggesties wanneer je pauzeert met typen." }, "autoTriggerDelay": { "label": "Automatische Activeringsvertraging", - "description": "De vertraging in seconden voordat Kilo Code Autocomplete activeert nadat je bent gestopt met typen. Een kortere vertraging betekent snellere suggesties, maar kan meer resource-intensief zijn." + "description": "De vertraging in seconden voordat suggesties verschijnen nadat je stopt met typen. Een kortere vertraging betekent snellere suggesties, maar kan meer resource-intensief zijn." }, "enableSmartInlineTaskKeybinding": { - "label": "Handmatige Automatische Aanvulling ({{keybinding}})", - "description": "Heb je een snelle fix, voltooiing of refactor nodig? Kilo zal de omringende context gebruiken om onmiddellijke verbeteringen aan te bieden, waardoor je in de flow blijft. Sneltoets bewerken" + "label": "Activeren met Sneltoets ({{keybinding}})", + "description": "Druk op {{keybinding}} om een codesuggestie op te vragen op je cursorpositie. Sneltoets bewerken" }, - "keybindingNotFound": "niet gevonden", - "configureAutocompleteProfile": "Gebruik elk model door naar profielen te gaan en een Profiel van het Profieltype Autocomplete te configureren.", - "model": "Model", - "provider": "Provider", "enableChatAutocomplete": { - "label": "Chatinvoer Automatisch Aanvullen", - "description": "Wanneer ingeschakeld, zal Kilo Code suggesties voor aanvullingen geven terwijl je typt in de chatinvoer. Druk op Tab om suggesties te accepteren." + "label": "Chat Autocomplete Inschakelen", + "description": "Toon aanvullingen terwijl je typt in de chatinvoer. Druk op Tab om suggesties te accepteren." }, "snooze": { - "label": "Autocomplete Snoozen", - "description": "Pauzeer autocomplete-suggesties tijdelijk voor een opgegeven duur.", + "label": "Suggesties Snoozen", + "description": "Pauzeer suggesties tijdelijk voor een opgegeven duur.", "button": "Snoozen", "unsnooze": "Snooze opheffen", - "currentlySnoozed": "Autocomplete is momenteel gesnoozed.", + "currentlySnoozed": "Suggesties zijn momenteel gesnoozed.", "duration": { "1min": "1 minuut", "5min": "5 minuten", @@ -268,7 +265,9 @@ "title": "Geen tegoed op je account", "description": "Je Kilo Code-account heeft geen tegoed. Om autocomplete te gebruiken, voeg tegoed toe aan je account.", "buyCredits": "Tegoed kopen →" - } + }, + "keybindingNotFound": "niet gevonden", + "configureAutocompleteProfile": "Gebruik elk model door naar profielen te gaan en een Profiel van het Profieltype Autocomplete te configureren." } }, "virtualProvider": { diff --git a/webview-ui/src/i18n/locales/pl/kilocode.json b/webview-ui/src/i18n/locales/pl/kilocode.json index b5f8d4406b1..6642fce2575 100644 --- a/webview-ui/src/i18n/locales/pl/kilocode.json +++ b/webview-ui/src/i18n/locales/pl/kilocode.json @@ -216,7 +216,8 @@ "ghost": { "title": "Autocomplete", "settings": { - "triggers": "Wyzwalacze", + "codeEditorSuggestions": "Sugestie Edytora Kodu", + "chatSuggestions": "Sugestie Czatu", "keybindingDescription": "Funkcje Autocomplete mogą być wyzwalane przez polecenia. Możesz skonfigurować Skróty Klawiszowe tutaj.", "enableAutoTrigger": { "label": "Włącz Autocomplete", diff --git a/webview-ui/src/i18n/locales/pt-BR/kilocode.json b/webview-ui/src/i18n/locales/pt-BR/kilocode.json index 91efc974c98..c0267826640 100644 --- a/webview-ui/src/i18n/locales/pt-BR/kilocode.json +++ b/webview-ui/src/i18n/locales/pt-BR/kilocode.json @@ -216,34 +216,32 @@ "ghost": { "title": "Autocomplete", "settings": { - "triggers": "Gatilhos", - "keybindingDescription": "As funcionalidades do Autocomplete podem ser ativadas por comandos. Você pode configurar os Atalhos de Teclado aqui.", "enableAutoTrigger": { - "label": "Habilitar Autocomplete", - "description": "Quando habilitado, o Kilo Code ativará automaticamente o Autocomplete quando você parar de digitar. Isso pode ser útil para correções rápidas e sugestões." + "label": "Auto-trigger Suggestions", + "description": "Mostrar automaticamente sugestões de código inline quando você pausa de digitar." }, "autoTriggerDelay": { "label": "Atraso da Ativação Automática", - "description": "O atraso em segundos antes do Kilo Code ativar o Autocomplete depois que você parar de digitar. Um atraso menor significa sugestões mais rápidas, mas pode ser mais intensivo em recursos." + "description": "The delay in seconds before suggestions appear after you pause typing. A shorter delay means quicker suggestions, but may be more resource-intensive." }, "enableSmartInlineTaskKeybinding": { - "label": "Preenchimento Automático Manual ({{keybinding}})", - "description": "Precisa de uma correção rápida, completação ou refatoração? O Kilo usará o contexto ao redor para oferecer melhorias imediatas, mantendo você no fluxo. Ver atalho" + "label": "Trigger on Keybinding ({{keybinding}})", + "description": "Press {{keybinding}} to request a code suggestion at your cursor position. Edit shortcut" }, "keybindingNotFound": "não encontrado", "configureAutocompleteProfile": "Use qualquer modelo indo para perfis e configurando um Perfil do Tipo de Perfil Autocompletar.", "model": "Modelo", "provider": "Provedor", "enableChatAutocomplete": { - "label": "Preenchimento Automático do Chat", - "description": "Quando ativado, o Kilo Code irá sugerir conclusões enquanto você digita no campo de chat. Pressione Tab para aceitar as sugestões." + "label": "Enable Chat Autocomplete", + "description": "Show completions as you type in the chat input. Press Tab to accept suggestions." }, "snooze": { - "label": "Adiar Autocomplete", - "description": "Pausar temporariamente as sugestões de autocomplete por um período especificado.", + "label": "Snooze Suggestions", + "description": "Temporarily pause suggestions for a specified duration.", "button": "Adiar", "unsnooze": "Reativar", - "currentlySnoozed": "O autocomplete está adiado no momento.", + "currentlySnoozed": "Suggestions are currently snoozed.", "duration": { "1min": "1 minuto", "5min": "5 minutos", @@ -261,7 +259,9 @@ "title": "Sem créditos na sua conta", "description": "Sua conta Kilo Code não tem créditos. Para usar o autocomplete, adicione créditos à sua conta.", "buyCredits": "Comprar créditos →" - } + }, + "codeEditorSuggestions": "Code Editor Suggestions", + "chatSuggestions": "Chat Suggestions" } }, "virtualProvider": { diff --git a/webview-ui/src/i18n/locales/ru/kilocode.json b/webview-ui/src/i18n/locales/ru/kilocode.json index 5504765af5a..45ebe181e1b 100644 --- a/webview-ui/src/i18n/locales/ru/kilocode.json +++ b/webview-ui/src/i18n/locales/ru/kilocode.json @@ -216,7 +216,8 @@ "ghost": { "title": "Autocomplete", "settings": { - "triggers": "Триггеры", + "codeEditorSuggestions": "Предложения редактора кода", + "chatSuggestions": "Предложения чата", "keybindingDescription": "Функции Autocomplete могут быть запущены командами. Ты можешь настроить Горячие Клавиши здесь.", "enableAutoTrigger": { "label": "Включить Autocomplete", diff --git a/webview-ui/src/i18n/locales/th/kilocode.json b/webview-ui/src/i18n/locales/th/kilocode.json index 5caed89bafb..dd45a391d05 100644 --- a/webview-ui/src/i18n/locales/th/kilocode.json +++ b/webview-ui/src/i18n/locales/th/kilocode.json @@ -223,34 +223,32 @@ "ghost": { "title": "Autocomplete", "settings": { - "triggers": "ตัวเรียกใช้", - "keybindingDescription": "ฟีเจอร์ Autocomplete สามารถเรียกใช้ได้ด้วยคำสั่ง คุณสามารถกำหนดค่า แป้นพิมพ์ลัดได้ที่นี่", "enableAutoTrigger": { - "label": "เปิดใช้งาน Autocomplete", - "description": "เมื่อเปิดใช้งาน Kilo Code จะเรียกใช้ Autocomplete โดยอัตโนมัติเมื่อคุณหยุดพิมพ์ สิ่งนี้อาจมีประโยชน์สำหรับการแก้ไขด่วนและคำแนะนำ" + "label": "Auto-trigger Suggestions", + "description": "แสดงคำแนะนำโค้ดแบบอินไลน์โดยอัตโนมัติเมื่อคุณหยุดพิมพ์" }, "autoTriggerDelay": { "label": "ความล่าช้าของการเรียกใช้อัตโนมัติ", - "description": "ความล่าช้าเป็นวินาทีก่อนที่ Kilo Code จะเรียกใช้ Autocomplete หลังจากที่คุณหยุดพิมพ์ ความล่าช้าที่สั้นกว่าหมายถึงคำแนะนำที่เร็วกว่า แต่อาจใช้ทรัพยากรมากกว่า" + "description": "The delay in seconds before suggestions appear after you pause typing. A shorter delay means quicker suggestions, but may be more resource-intensive." }, "enableSmartInlineTaskKeybinding": { - "label": "การเติมอัตโนมัติด้วยตัวเอง ({{keybinding}})", - "description": "ต้องการการแก้ไขด่วน การเติมเต็ม หรือการปรับโครงสร้างใหม่? Kilo จะใช้บริบทโดยรอบเพื่อเสนอการปรับปรุงทันที ทำให้คุณอยู่ในขั้นตอนการทำงาน ดูทางลัด" + "label": "Trigger on Keybinding ({{keybinding}})", + "description": "Press {{keybinding}} to request a code suggestion at your cursor position. Edit shortcut" }, "keybindingNotFound": "ไม่พบ", "configureAutocompleteProfile": "ใช้โมเดลใดก็ได้โดยไปที่โปรไฟล์และตั้งค่าโปรไฟล์ประเภทเติมข้อความอัตโนมัติ", "model": "โมเดล", "provider": "ผู้ให้บริการ", "enableChatAutocomplete": { - "label": "การเติมข้อความอัตโนมัติในการแชท", - "description": "เมื่อเปิดใช้งาน Kilo Code จะแนะนำข้อความเพื่อให้คุณพิมพ์ต่อในช่องแชท กดแท็บเพื่อยอมรับคำแนะนำ" + "label": "Enable Chat Autocomplete", + "description": "Show completions as you type in the chat input. Press Tab to accept suggestions." }, "snooze": { - "label": "หยุดการเติมข้อความอัตโนมัติชั่วคราว", - "description": "หยุดคำแนะนำการเติมข้อความอัตโนมัติชั่วคราวตามระยะเวลาที่กำหนด", + "label": "Snooze Suggestions", + "description": "Temporarily pause suggestions for a specified duration.", "button": "หยุดชั่วคราว", "unsnooze": "เปิดใช้งานอีกครั้ง", - "currentlySnoozed": "การเติมข้อความอัตโนมัติถูกหยุดชั่วคราวอยู่", + "currentlySnoozed": "Suggestions are currently snoozed.", "duration": { "1min": "1 นาที", "5min": "5 นาที", @@ -268,7 +266,9 @@ "title": "ไม่มีเครดิตในบัญชีของคุณ", "description": "บัญชี Kilo Code ของคุณไม่มีเครดิต หากต้องการใช้ Autocomplete กรุณาเติมเครดิตในบัญชีของคุณ", "buyCredits": "ซื้อเครดิต →" - } + }, + "codeEditorSuggestions": "Code Editor Suggestions", + "chatSuggestions": "Chat Suggestions" } }, "virtualProvider": { diff --git a/webview-ui/src/i18n/locales/tr/kilocode.json b/webview-ui/src/i18n/locales/tr/kilocode.json index 9cad4c885a2..0ef5444a656 100644 --- a/webview-ui/src/i18n/locales/tr/kilocode.json +++ b/webview-ui/src/i18n/locales/tr/kilocode.json @@ -216,34 +216,32 @@ "ghost": { "title": "Autocomplete", "settings": { - "triggers": "Tetikleyiciler", - "keybindingDescription": "Autocomplete özellikleri komutlarla tetiklenebilir. Klavye Kısayollarını burada yapılandırabilirsin.", "enableAutoTrigger": { - "label": "Autocomplete'i Etkinleştir", - "description": "Etkinleştirildiğinde, Kilo Code yazmayı bıraktığında otomatik olarak Autocomplete'i tetikleyecek. Bu hızlı düzeltmeler ve öneriler için yararlı olabilir." + "label": "Auto-trigger Suggestions", + "description": "Yazmayı duraklattığınızda otomatik olarak satır içi kod önerileri göster." }, "autoTriggerDelay": { "label": "Otomatik Tetikleme Gecikmesi", - "description": "Yazmayı bıraktıktan sonra Kilo Code'un Autocomplete'i tetiklemeden önceki saniye cinsinden gecikme. Daha kısa gecikme daha hızlı öneriler anlamına gelir, ancak daha fazla kaynak yoğun olabilir." + "description": "The delay in seconds before suggestions appear after you pause typing. A shorter delay means quicker suggestions, but may be more resource-intensive." }, "enableSmartInlineTaskKeybinding": { - "label": "Manuel Otomatik Tamamlama ({{keybinding}})", - "description": "Hızlı bir düzeltme, tamamlama veya yeniden düzenleme mi gerekiyor? Kilo çevredeki bağlamı kullanarak anında iyileştirmeler sunacak, seni akışta tutacak. Kısayolu gör" + "label": "Trigger on Keybinding ({{keybinding}})", + "description": "Press {{keybinding}} to request a code suggestion at your cursor position. Edit shortcut" }, "keybindingNotFound": "bulunamadı", "configureAutocompleteProfile": "Profillere giderek ve Otomatik Tamamlama Profil Türünde bir Profil yapılandırarak herhangi bir model kullan.", "model": "Model", "provider": "Sağlayıcı", "enableChatAutocomplete": { - "label": "Sohbet Girişi Otomatik Tamamlama", - "description": "Etkinleştirildiğinde, Kilo Code sohbet girişinde yazarken tamamlama önerileri sunacaktır. Önerileri kabul etmek için Tab tuşuna basın." + "label": "Enable Chat Autocomplete", + "description": "Show completions as you type in the chat input. Press Tab to accept suggestions." }, "snooze": { - "label": "Otomatik Tamamlamayı Ertele", - "description": "Otomatik tamamlama önerilerini belirli bir süre için geçici olarak duraklat.", + "label": "Snooze Suggestions", + "description": "Temporarily pause suggestions for a specified duration.", "button": "Ertele", "unsnooze": "Ertelemeyi Kaldır", - "currentlySnoozed": "Otomatik tamamlama şu anda ertelenmiş durumda.", + "currentlySnoozed": "Suggestions are currently snoozed.", "duration": { "1min": "1 dakika", "5min": "5 dakika", @@ -261,7 +259,9 @@ "title": "Hesabınızda kredi yok", "description": "Kilo Code hesabınızda kredi bulunmuyor. Otomatik tamamlamayı kullanmak için lütfen hesabınıza kredi ekleyin.", "buyCredits": "Kredi satın al →" - } + }, + "codeEditorSuggestions": "Code Editor Suggestions", + "chatSuggestions": "Chat Suggestions" } }, "virtualProvider": { diff --git a/webview-ui/src/i18n/locales/uk/kilocode.json b/webview-ui/src/i18n/locales/uk/kilocode.json index 9504cfa4a3e..ee33ecf8450 100644 --- a/webview-ui/src/i18n/locales/uk/kilocode.json +++ b/webview-ui/src/i18n/locales/uk/kilocode.json @@ -223,34 +223,32 @@ "ghost": { "title": "Autocomplete", "settings": { - "triggers": "Тригери", - "keybindingDescription": "Функції Autocomplete можуть бути запущені командами. Ти можеш налаштувати Гарячі Клавіші тут.", "enableAutoTrigger": { - "label": "Увімкнути Autocomplete", - "description": "Коли увімкнено, Kilo Code автоматично запустить Autocomplete, коли ти перестанеш друкувати. Це може бути корисно для швидких виправлень та пропозицій." + "label": "Auto-trigger Suggestions", + "description": "Автоматично показувати вбудовані пропозиції коду, коли ви робите паузу під час введення." }, "autoTriggerDelay": { "label": "Затримка Автоматичного Запуску", - "description": "Затримка в секундах перед тим, як Kilo Code запустить Autocomplete після того, як ти перестанеш друкувати. Менша затримка означає швидші пропозиції, але може бути більш ресурсомісткою." + "description": "The delay in seconds before suggestions appear after you pause typing. A shorter delay means quicker suggestions, but may be more resource-intensive." }, "enableSmartInlineTaskKeybinding": { - "label": "Ручне автозаповнення ({{keybinding}})", - "description": "Потрібне швидке виправлення, доповнення або рефакторинг? Kilo використає навколишній контекст для миттєвих покращень, зберігаючи тебе в потоці. Подивитися гарячу клавішу" + "label": "Trigger on Keybinding ({{keybinding}})", + "description": "Press {{keybinding}} to request a code suggestion at your cursor position. Edit shortcut" }, "keybindingNotFound": "не знайдено", "configureAutocompleteProfile": "Використовуй будь-яку модель, перейшовши до профілів і налаштувавши Профіль типу Автодоповнення.", "model": "Модель", "provider": "Провайдер", "enableChatAutocomplete": { - "label": "Автозаповнення вводу чату", - "description": "Якщо ввімкнено, Kilo Code пропонуватиме доповнення під час введення в чаті. Натисніть Tab, щоб прийняти пропозиції." + "label": "Enable Chat Autocomplete", + "description": "Show completions as you type in the chat input. Press Tab to accept suggestions." }, "snooze": { - "label": "Призупинити автодоповнення", - "description": "Тимчасово призупинити пропозиції автодоповнення на вказаний період.", + "label": "Snooze Suggestions", + "description": "Temporarily pause suggestions for a specified duration.", "button": "Призупинити", "unsnooze": "Відновити", - "currentlySnoozed": "Автодоповнення наразі призупинено.", + "currentlySnoozed": "Suggestions are currently snoozed.", "duration": { "1min": "1 хвилина", "5min": "5 хвилин", @@ -268,7 +266,9 @@ "title": "На вашому рахунку немає кредитів", "description": "На вашому рахунку Kilo Code немає кредитів. Щоб використовувати автодоповнення, будь ласка, поповніть свій рахунок.", "buyCredits": "Придбати кредити →" - } + }, + "codeEditorSuggestions": "Code Editor Suggestions", + "chatSuggestions": "Chat Suggestions" } }, "virtualProvider": { diff --git a/webview-ui/src/i18n/locales/vi/kilocode.json b/webview-ui/src/i18n/locales/vi/kilocode.json index a62625f5b60..5be61f12782 100644 --- a/webview-ui/src/i18n/locales/vi/kilocode.json +++ b/webview-ui/src/i18n/locales/vi/kilocode.json @@ -216,7 +216,8 @@ "ghost": { "title": "Autocomplete", "settings": { - "triggers": "Bộ Kích Hoạt", + "codeEditorSuggestions": "Gợi ý Trình soạn thảo Mã", + "chatSuggestions": "Gợi ý Trò chuyện", "keybindingDescription": "Các tính năng Autocomplete có thể được kích hoạt bằng lệnh. Bạn có thể cấu hình Phím Tắt ở đây.", "enableAutoTrigger": { "label": "Bật Autocomplete", diff --git a/webview-ui/src/i18n/locales/zh-CN/kilocode.json b/webview-ui/src/i18n/locales/zh-CN/kilocode.json index e3ac286d3b1..2c5036317ad 100644 --- a/webview-ui/src/i18n/locales/zh-CN/kilocode.json +++ b/webview-ui/src/i18n/locales/zh-CN/kilocode.json @@ -223,7 +223,8 @@ "ghost": { "title": "自动补全", "settings": { - "triggers": "触发器", + "codeEditorSuggestions": "代码编辑器建议", + "chatSuggestions": "聊天建议", "keybindingDescription": "自动补全功能可以通过命令触发。你可以在这里配置键盘快捷键。", "enableAutoTrigger": { "label": "启用自动补全", diff --git a/webview-ui/src/i18n/locales/zh-TW/kilocode.json b/webview-ui/src/i18n/locales/zh-TW/kilocode.json index 2f564de9c3d..9003e4485d7 100644 --- a/webview-ui/src/i18n/locales/zh-TW/kilocode.json +++ b/webview-ui/src/i18n/locales/zh-TW/kilocode.json @@ -218,34 +218,32 @@ "ghost": { "title": "自動補全", "settings": { - "triggers": "觸發器", - "keybindingDescription": "自動補全功能可以透過指令觸發。你可以在這裡設定鍵盤快速鍵。", "enableAutoTrigger": { - "label": "啟用自動補全", - "description": "啟用後,當你停止輸入時 Kilo Code 將自動觸發自動補全。這對快速修正和建議很有用。" + "label": "Auto-trigger Suggestions", + "description": "當您暫停輸入時自動顯示內嵌程式碼建議。" }, "autoTriggerDelay": { "label": "自動觸發延遲", - "description": "你停止輸入後 Kilo Code 觸發自動補全前的秒數延遲。延遲越短建議獲取速度越快,但可能更耗費資源。" + "description": "The delay in seconds before suggestions appear after you pause typing. A shorter delay means quicker suggestions, but may be more resource-intensive." }, "enableSmartInlineTaskKeybinding": { - "label": "手動自動補全 ({{keybinding}})", - "description": "需要快速修正、補全或重構?Kilo 將使用周圍內容提供即時改進,保持你的工作流程。檢視快速鍵" + "label": "Trigger on Keybinding ({{keybinding}})", + "description": "Press {{keybinding}} to request a code suggestion at your cursor position. Edit shortcut" }, "keybindingNotFound": "未找到", "configureAutocompleteProfile": "前往設定檔並設定自動補全類型的設定檔即可使用任意模型。", "model": "模型", "provider": "供應商", "enableChatAutocomplete": { - "label": "聊天輸入自動補全", - "description": "啟用後,Kilo Code 將在你於聊天輸入框中輸入時提供補全建議。按 Tab 鍵接受建議。" + "label": "Enable Chat Autocomplete", + "description": "Show completions as you type in the chat input. Press Tab to accept suggestions." }, "snooze": { - "label": "暫停自動補全", - "description": "暫時停止自動補全建議一段指定時間。", + "label": "Snooze Suggestions", + "description": "Temporarily pause suggestions for a specified duration.", "button": "暫停", "unsnooze": "取消暫停", - "currentlySnoozed": "自動補全目前已暫停。", + "currentlySnoozed": "Suggestions are currently snoozed.", "duration": { "1min": "1 分鐘", "5min": "5 分鐘", @@ -263,7 +261,9 @@ "title": "您的帳戶沒有額度", "description": "您的 Kilo Code 帳戶沒有額度。若要使用自動補全,請為您的帳戶儲值。", "buyCredits": "購買額度 →" - } + }, + "codeEditorSuggestions": "Code Editor Suggestions", + "chatSuggestions": "Chat Suggestions" } }, "virtualProvider": {