VSCode extension providing IntelliSense and language support for Scriptling libraries.
Scriptling is a Python-like scripting language for LLM agents. This extension enhances the VSCode Python extension by providing type stubs and IntelliSense for Scriptling's extension libraries:
- scriptling.ai - AI/LLM library for OpenAI, Claude, Gemini, Ollama, ZAI, and Mistral
- scriptling.mcp - Model Context Protocol client library
- scriptling.similarity - String matching and similarity utilities including fuzzy search and MinHash
- scriptling.secret - Provider-agnostic secret access through host-configured aliases
- scriptling.ai.agent - AI agent with tool-calling capabilities
- scriptling.ai.tools - AI tool registry and utilities
- scriptling.ai.memory - AI memory/context management
- scriptling.console - Console output and formatting utilities
- scriptling.runtime - Runtime environment APIs (http, kv, sync, sandbox)
- scriptling.toon - Animation utilities
- scriptling.wait_for - Async wait utilities
- Open VSCode
- Go to Extensions (Cmd+Shift+X / Ctrl+Shift+X)
- Search for "Scriptling"
- Click Install
- Download the
.vsixfile from Releases - Open VSCode
- Go to Extensions (Cmd+Shift+X / Ctrl+Shift+X)
- Click the "..." menu → "Install from VSIX..."
- Select the downloaded file
git clone https://github.com/paularlott/scriptling-vscode.git
cd scriptling-vscode
npm install
npm run compile
npm run package
code --install-extension scriptling-x.x.x.vsixOr use Task/Make:
task package # Build and package
task release # Tag + GitHub release
task publish # Publish to VSCode MarketplaceOnce installed, the extension automatically activates when you open Python files and provides IntelliSense for Scriptling libraries.
import scriptling.ai as ai
from scriptling.ai.agent import Agent
# AI client with autocomplete
client = ai.Client(
"",
provider=ai.OPENAI,
api_key="sk-...",
max_tokens=2048,
temperature=0.7
)
response = client.completion("gpt-4", "Hello!")
print(response.choices[0].message.content)
# Agent with tools
tools = ai.ToolRegistry()
tools.add("get_time", "Get current time", {}, lambda args: "12:00 PM")
agent = Agent(client, tools=tools, model="gpt-4")| Setting | Description | Default |
|---|---|---|
scriptling.stubPath |
Custom path to Scriptling type stubs | "" (uses bundled stubs) |
See CONTRIBUTING.md for contribution guidelines.
MIT License - see LICENSE.txt for details.
- Scriptling - The Scriptling interpreter