Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>CipherCode — AI Coding AssistantNew to Visual Studio Code? Get it now.
CipherCode — AI Coding Assistant

CipherCode — AI Coding Assistant

ciphercode

|
1 install
| (0) | Free
The AI that writes code the way YOU would. Style-aware completion, project memory, and chat — by Lila AI LLC.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

CipherCode™ — AI Coding Assistant

The AI that writes code the way YOU would. By Lila AI LLC. Free. Closed beta.

CipherCode is a VS Code extension powered by CipherModel-1.5B — Qwen2.5-Coder-1.5B served from a private GCP Cloud Run. Its killer features:

  • ✨ Cipher Persona™ — silently learns your coding style and generates suggestions in your voice
  • 🧠 Project Memory — remembers your project across sessions: summary, key files, decisions, last 20 chat messages
  • 🔒 100% private — your code never trains anyone else; only the snippet you act on goes to inference

📦 Install (closed beta)

CipherCode is in invitation-only closed beta. If Lila AI sent you a .vsix file:

code --install-extension ciphercode-0.1.0.vsix

That's it. Open VS Code — CipherCode appears in the Activity Bar. Start typing, or click the icon to open the chat sidebar.

No setup. No accounts. No tokens to paste. The Cloud Run URL and bearer token are bundled into your beta build.


🎯 What You Can Do

Inline (just keep typing)

  • AI completion appears as ghost text after a 700ms pause
  • Style-matched: respects your camelCase/snake_case, arrow vs named functions, semicolons, indent, etc.

Right-click on selected code

  • Explain Code — clear summary of what this does
  • Refactor Code — clean up while preserving your style
  • Fix Bug — find and patch bugs
  • Add Comments — style-matched commenting

Right-click anywhere in a file (no selection needed)

  • Document This File — generates language-aware doc comments (TSDoc / JSDoc / Google Python / Javadoc / XMLDoc / Doxygen / godoc / rustdoc / PHPDoc / YARD)

Chat sidebar

  • Persistent history (last 10 messages restored on open)
  • Quick-start suggestion cards on first open
  • Code blocks with Copy button + language tag
  • Per-reply actions: Copy / Insert at cursor / Regenerate
  • Markdown rendering for headings, lists, links, inline code
  • Auto-resize composer; Enter to send, Shift+Enter for newline

Command Palette (⌘⇧P / Ctrl⇧P → "CipherCode")

Command What it does
Explain Code Explain selected code
Refactor Code Refactor in your style
Fix Bug Identify and fix bugs
Add Comments Style-matched comments
Document This File Generate full doc comments for active file
Generate README from Project Create a README.md from your project structure
Open Chat Open the sidebar
Refresh My Style Persona Re-analyze your workspace
Show My Detected Style See what CipherCode learned about you
Show Project Memory Inspect .vscode/cipher-memory.json
Clear Project Memory Reset memory for this workspace

✨ Cipher Persona

Silently watches and detects:

  • Naming convention — camelCase / snake_case / PascalCase
  • Functions — arrow vs named declarations
  • Async style — async/await vs .then()
  • Comments — placement, verbosity
  • Indent size — 2 vs 4 spaces
  • Semicolons / type annotations — yes/no
  • Frequent imports — your top libraries

Persona never leaves your machine. It lives in VS Code's globalState.


🧠 Project Memory

Stored at .vscode/cipher-memory.json — your call to commit or .gitignore.

{
  "projectSummary": "Auto-detected from package.json or README",
  "projectType": "node | python | other",
  "keyFiles": [{ "path": "src/server.ts", "purpose": "" }],
  "decisions": [{ "topic": "...", "choice": "...", "reason": "..." }],
  "chatHistory": [{ "role": "user", "content": "...", "timestamp": "..." }],
  "patterns": []
}

Every chat message and every inline completion gets the memory injected as context.


🆚 Why CipherCode

GitHub Copilot Claude Code CipherCode
Inline completion ✅ ✅ ✅
Chat sidebar ✅ ✅ ✅
Lives inside VS Code (not terminal) ✅ ❌ ✅
Learns YOUR coding style ❌ ❌ ✅ Cipher Persona
Persistent project memory ❌ ❌ ✅
Chat history per project ❌ ❌ ✅ Survives restarts
Self-hosted on private infra ❌ ❌ ✅

⚙️ Settings (optional — defaults Just Work)

Setting Default Description
ciphercode.cloudRunUrl bundled Override Cloud Run URL (if running your own)
ciphercode.cloudRunToken bundled Override bearer token
ciphercode.enableInlineCompletion true Inline completions while typing
ciphercode.enablePersona true Match your coding style
ciphercode.enableMemory true Persist project memory
ciphercode.maxTokens 512 Max tokens per response
ciphercode.temperature 0.2 Sampling temperature

🔐 Privacy

  • Code stays on your machine. Only the snippet you act on is sent to the Lila AI Cloud Run.
  • Cipher Persona is stored locally — never uploaded.
  • Project Memory lives in your workspace's .vscode/ — never uploaded.
  • Lila AI does not log or store your prompts beyond what's needed to serve the response.

💰 Pricing

Free for the v0.1 closed beta. Capped at 5 concurrent users to keep it fast and stable.

A future hosted Pro tier may be offered for users who want zero-setup at scale, but the closed-beta path will remain free for invited users.


🛠️ For Maintainers (you, not your friends)

Everything below is for the developer publishing the extension. Your friends never see this.

Re-deploy the inference server

# 1. Fine-tune (Kaggle T4 or any GPU box)
python scripts/finetune/finetune_qwen.py
python scripts/finetune/merge_and_rename.py
bash   scripts/finetune/convert_to_gguf.sh
# → produces CipherModel-1.5B-Q4_K_M.gguf

# 2. Deploy to Cloud Run
bash scripts/deploy/deploy.sh
# → prints your Cloud Run URL and bearer token

Verify the server with curl

curl -X POST https://YOUR_CLOUD_RUN_URL/v1/chat/completions \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "cipher-model",
    "messages": [{"role":"user","content":"write a hello world in python"}],
    "max_tokens": 100
  }'
  • 503 / "loading" → model still downloading from GCS. Wait 60s and retry.
  • 401 / 403 → bearer token mismatch.
  • 500 → check logs: gcloud run services logs read ciphercode-server --region us-central1.

Wire URL + token into the extension

Edit src/inferenceClient.ts at the top — replace the two PLACEHOLDER_* strings with what deploy.sh printed:

const BUNDLED_CLOUD_RUN_URL   = 'https://ciphercode-server-xxxx-uc.a.run.app';
const BUNDLED_CLOUD_RUN_TOKEN = 'your-actual-bearer-token';

Then:

npm run compile
npx @vscode/vsce package    # → ciphercode-0.1.0.vsix

Distribute that .vsix to your friends via DM/email.

Publish to Marketplace (when ready)

# 1. At https://marketplace.visualstudio.com/manage/publishers — create publisher "lila-ai-llc"
# 2. At https://dev.azure.com — generate a PAT with "Marketplace (Manage)" scope
# 3. Then locally:
npx @vscode/vsce login lila-ai-llc
npx @vscode/vsce publish

⚠️ Before public marketplace launch: rotate the bundled token, add IP-based rate limiting, and set up a GCP budget alert. With min-instances=0 and --concurrency 5 --max-instances 1, costs are bounded — but a public .vsix is a public token.


™️ Trademark & License

CipherCode™ and Cipher Persona™ are trademarks of Lila AI LLC. All rights reserved.

Source code is licensed under MIT. See LICENSE for details and trademark usage guidelines.

© 2026 Lila AI LLC.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft