Skip to content

Commit e15465a

Browse files
committed
feat: add VSCode extension documentation and installation instructions
Signed-off-by: Nikolai Emil Damm <[email protected]>
1 parent 68ce0f3 commit e15465a

File tree

4 files changed

+149
-5
lines changed

4 files changed

+149
-5
lines changed

.github/workflows/cd.yaml

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -43,9 +43,6 @@ jobs:
4343
username: ${{ github.actor }}
4444
password: ${{ secrets.GITHUB_TOKEN }}
4545

46-
- name: 📚 Generate embedded docs
47-
run: go generate ./pkg/svc/chat/...
48-
4946
- name: 🏗️ Run GoReleaser
5047
uses: goreleaser/goreleaser-action@e435ccd777264be153ace6237001ef4d979d3a7a # v6.4.0
5148
with:
@@ -59,7 +56,6 @@ jobs:
5956
vscode-extension:
6057
name: 🧩 Release VSCode Extension
6158
runs-on: ubuntu-latest
62-
needs: goreleaser
6359
permissions:
6460
contents: write
6561
defaults:

pkg/svc/chat/docs/features.mdx

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -234,6 +234,47 @@ ksail chat
234234

235235
**Commands:** [`ksail chat`](/cli-flags/chat/chat-root/)
236236

237+
## VSCode Extension
238+
239+
Manage KSail clusters directly from Visual Studio Code with an integrated extension that provides cluster management, interactive wizards, and AI assistant integration.
240+
241+
```bash
242+
# Install from VSCode Marketplace
243+
# Search for "KSail" in Extensions view
244+
```
245+
246+
**Capabilities:**
247+
248+
- **Clusters sidebar view** — View and manage clusters with status indicators (running/stopped)
249+
- **Interactive wizards** — Step-by-step configuration for cluster init and create operations
250+
- **Command palette** — Full access to all cluster lifecycle commands
251+
- **Keyboard shortcuts** — Quick access to common operations (`Cmd+Shift+K` prefix)
252+
- **Smart context menus** — Right-click actions based on cluster state
253+
- **MCP server provider** — Exposes KSail as an MCP server for AI assistants
254+
255+
**Features:**
256+
257+
| Feature | Description |
258+
| -------------------- | ----------------------------------------------------- |
259+
| Cluster tree view | Shows all clusters with provider and status info |
260+
| Init wizard | Multi-step configuration for new clusters |
261+
| Create wizard | Guided cluster creation with component selection |
262+
| Command shortcuts | `Cmd+Shift+K I` (init), `C` (create), `D` (delete) |
263+
| K9s integration | Open cluster in K9s terminal UI |
264+
| MCP integration | Use KSail with Copilot and other AI tools |
265+
266+
**Prerequisites:**
267+
268+
- [KSail CLI](https://ksail.devantler.tech/installation/) installed and in PATH
269+
- [Docker](https://www.docker.com/get-started/) running (for cluster operations)
270+
- [K9s](https://k9scli.io/) (optional, for cluster connection)
271+
272+
**Installation:** See [VSCode Extension Installation](/installation/#vscode-extension) for setup instructions.
273+
274+
**Repository:** [vsce/](https://github.com/devantler-tech/ksail/tree/main/vsce)
275+
276+
**Marketplace:** [Visual Studio Marketplace](https://marketplace.visualstudio.com/items?itemName=devantler.ksail)
277+
237278
## Next Steps
238279

239280
- **[Use Cases](/use-cases/)** – Workflows for learning, development, and CI/CD

pkg/svc/chat/docs/index.mdx

Lines changed: 53 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,58 @@ import { Card, CardGrid } from "@astrojs/starlight/components";
2222
import { Image } from "astro:assets";
2323
import mentalModel from "../../assets/mental-model.svg";
2424

25+
## Why KSail?
26+
27+
Setting up and operating Kubernetes clusters often requires juggling multiple CLI tools, writing bespoke scripts, and dealing with inconsistent workflows. KSail removes the tooling overhead so you can focus on your workloads.
28+
29+
## Key Features
30+
31+
- 📦 **One Binary** — Embeds cluster provisioning, GitOps engines, and deployment tooling. No tool sprawl.
32+
- ☸️ **Simple Clusters** — Spin up Vanilla, K3s, or Talos clusters with one command. Same workflow across distributions.
33+
- 📄 **Everything as Code** — Cluster settings, distribution configs, and workloads in version-controlled files.
34+
- 🔄 **GitOps Native** — Built-in Flux or ArgoCD support with bootstrap, push, and reconcile commands.
35+
- ⚙️ **Customizable Stack** — Select your CNI, CSI, policy engine, cert-manager, and mirror registries.
36+
- 🔐 **SOPS Built In** — Encrypt, decrypt, and edit secrets with integrated cipher commands.
37+
- 🤖 **AI Assistant** — Interactive chat powered by GitHub Copilot for configuration and troubleshooting.
38+
- 💻 **VSCode Extension** — Manage clusters from VSCode with wizards, sidebar views, and command palette.
39+
40+
## Prerequisites
41+
42+
KSail works on all major operating systems and CPU architectures:
43+
44+
| OS | Architecture |
45+
|----|--------------|
46+
| 🐧 Linux | amd64, arm64 |
47+
| macOS | arm64 |
48+
| ⊞ Windows (untested) | amd64, arm64 |
49+
50+
**Docker is required** for local clusters. Install Docker Desktop/Engine and ensure `docker ps` works.
51+
52+
Supported distributions run on different infrastructure providers:
53+
54+
| Provider | Vanilla | K3s | Talos |
55+
|----------|---------|-----|-------|
56+
| Docker | ✅ (Kind) | ✅ (K3d) ||
57+
| Hetzner ||||
58+
59+
## Quick Start
60+
61+
``````bash
62+
# 1. Initialize a new project
63+
ksail cluster init --name my-cluster --distribution Vanilla
64+
65+
# 2. Create and start the cluster
66+
ksail cluster create
67+
68+
# 3. Add manifests to k8s/ directory
69+
70+
# 4. Deploy workloads
71+
ksail workload apply -k ./k8s
72+
73+
# 5. Connect with K9s
74+
ksail cluster connect
75+
``````
76+
2577
## How It Works
2678

2779
<Image src={mentalModel} alt="KSail Mental Model" />
@@ -30,7 +82,7 @@ import mentalModel from "../../assets/mental-model.svg";
3082

3183
<CardGrid>
3284
<Card title="Features" icon="rocket">
33-
Cluster provisioning, GitOps, secret management, and more. [Learn more →](/features/)
85+
Cluster provisioning, GitOps, secret management, VSCode extension, and more. [Learn more →](/features/)
3486
</Card>
3587
<Card title="Concepts" icon="open-book">
3688
Kubernetes, CNI, CSI, GitOps, and related technologies. [Learn more →](/concepts/)

pkg/svc/chat/docs/installation.mdx

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -125,6 +125,61 @@ To use the `ksail chat` AI assistant feature, you need the GitHub Copilot CLI:
125125
> [!NOTE]
126126
> GitHub Copilot requires an active subscription. The `ksail chat` command is optional and all other KSail features work without it.
127127
128+
## VSCode Extension
129+
130+
For Visual Studio Code users, install the KSail extension to manage clusters directly from your editor.
131+
132+
<Tabs>
133+
<TabItem label="Marketplace">
134+
### Install from Marketplace
135+
136+
1. Open VSCode
137+
2. Press `Cmd+Shift+X` (macOS) or `Ctrl+Shift+X` (Windows/Linux) to open Extensions view
138+
3. Search for "KSail"
139+
4. Click **Install** on the extension by devantler
140+
141+
**Marketplace Link:** [KSail - Visual Studio Marketplace](https://marketplace.visualstudio.com/items?itemName=devantler.ksail)
142+
143+
</TabItem>
144+
145+
<TabItem label="VSIX File">
146+
### Install from VSIX
147+
148+
1. Download the latest `.vsix` file from [GitHub Releases](https://github.com/devantler-tech/ksail/releases)
149+
2. Open VSCode
150+
3. Press `Cmd+Shift+P` (macOS) or `Ctrl+Shift+P` (Windows/Linux)
151+
4. Type `Extensions: Install from VSIX...`
152+
5. Select the downloaded `.vsix` file
153+
154+
</TabItem>
155+
</Tabs>
156+
157+
### Extension Prerequisites
158+
159+
- **KSail CLI** installed and available in PATH (see [installation methods](#installation-methods) above)
160+
- **Docker** running (for cluster operations)
161+
- **K9s** (optional, for cluster connection via `Connect to Cluster` command)
162+
163+
### Extension Features
164+
165+
The extension provides:
166+
167+
- **Cluster sidebar** with status indicators and context menus
168+
- **Interactive wizards** for cluster init and create
169+
- **Command palette** integration for all cluster operations
170+
- **Keyboard shortcuts** for common actions
171+
- **MCP server** integration for AI assistants
172+
173+
See the [Features - VSCode Extension](/features/#vscode-extension) section for detailed capabilities.
174+
175+
### Extension Settings
176+
177+
Configure the extension in VSCode settings (`Cmd+,` / `Ctrl+,`):
178+
179+
| Setting | Description | Default |
180+
| ------------------ | -------------------- | ------- |
181+
| `ksail.binaryPath` | Path to ksail binary | `ksail` |
182+
128183
## Verification
129184

130185
After installation, verify that KSail is installed correctly:

0 commit comments

Comments
 (0)