
Security News
eMudhra, Brotli, and the Long Tail of a Security Fix
Fixes for eMudhra and Brotli are out. Getting them everywhere they’re needed means tracking down bundled libraries, runtimes, and certificate stores.
@graphteon/juriko-cli
Advanced tools
JURIKO - An open-source AI agent that brings the power of AI directly into your terminal.
A conversational AI CLI tool with intelligent text editor capabilities and tool usage.
npm i -g @graphteon/juriko-clinpm install -g @graphteon/juriko-cli
git clone <repository>
cd juriko-cli
npm install
npm run build
npm link
JURIKO supports multiple AI providers. You can set up API keys for any or all of them:
Method 1: Environment Variables
# Anthropic Claude
export ANTHROPIC_API_KEY=your_anthropic_key_here
# OpenAI
export OPENAI_API_KEY=your_openai_key_here
# Grok (X.AI)
export GROK_API_KEY=your_grok_key_here
# Local LLM (optional)
export LOCAL_API_KEY=your_local_api_key_here
export LOCAL_BASE_URL=http://localhost:1234/v1
Method 2: .env File
cp .env.example .env
# Edit .env and add your API keys
Method 3: Command Line Flags
juriko --anthropic-key your_anthropic_key_here
juriko --openai-key your_openai_key_here
juriko --grok-key your_grok_key_here
Method 4: User Settings File
Create ~/.juriko/user-settings.json:
{
"provider": "anthropic",
"model": "claude-3-7-sonnet-latest",
"apiKeys": {
"anthropic": "your_anthropic_key_here",
"openai": "your_openai_key_here",
"grok": "your_grok_key_here",
"local": "your_local_api_key_here"
},
"baseURLs": {
"local": "http://localhost:1234/v1"
}
}
JURIKO supports connecting to local LLM servers that expose OpenAI-compatible APIs. This includes popular local LLM solutions like:
LM Studio:
http://localhost:1234/v1)Ollama:
ollama pull llama2ollama serve (runs on http://localhost:11434/v1)llama.cpp:
./server -m model.gguf --port 8080http://localhost:8080/v1 as base URL in JURIKOWhen you select "Local" as your provider, JURIKO will guide you through a 4-step configuration wizard:
http://localhost:1234/v1)The wizard includes helpful examples and validates your configuration before proceeding.
When you first run JURIKO, you'll be presented with an interactive interface to:
You can change providers anytime by:
provider or switch in the chatCtrl+P for quick provider switchingjuriko again to go through the selection processAnthropic Claude:
claude-3-7-sonnet-latest (Latest Claude 3.7 Sonnet)claude-sonnet-4-20250514 (Claude Sonnet 4)claude-opus-4-20250514 (Claude Opus 4)claude-3-5-sonnet-20241022 (Claude 3.5 Sonnet)claude-3-5-haiku-20241022 (Fast and efficient)claude-3-opus-20240229 (Most capable Claude 3)OpenAI:
gpt-4o (Latest GPT-4 Omni)gpt-4o-mini (Fast and cost-effective)gpt-4-turbo (High performance)gpt-3.5-turbo (Fast and affordable)Grok (X.AI):
grok-beta (Latest Grok model)grok-vision-beta (With vision capabilities)Local LLM:
custom-model (Your custom local model)Start the conversational AI assistant:
juriko
Or specify a working directory:
juriko -d /path/to/project
On your first run, JURIKO will guide you through:
You can easily switch between providers and models:
provider or switch in the chatCtrl+P for quick access~/.juriko/user-settings.jsonYou can provide custom instructions to tailor JURIKO's behavior to your project by creating a .juriko/JURIKO.md file in your project directory:
mkdir .juriko
Create .juriko/JURIKO.md with your custom instructions:
# Custom Instructions for JURIKO CLI
Always use TypeScript for any new code files.
When creating React components, use functional components with hooks.
Prefer const assertions and explicit typing over inference where it improves clarity.
Always add JSDoc comments for public functions and interfaces.
Follow the existing code style and patterns in this project.
JURIKO will automatically load and follow these instructions when working in your project directory. The custom instructions are added to JURIKO's system prompt and take priority over default behavior.
Instead of typing commands, just tell JURIKO what you want to do:
💬 "Show me the contents of package.json"
💬 "Create a new file called hello.js with a simple console.log"
💬 "Find all TypeScript files in the src directory"
💬 "Replace 'oldFunction' with 'newFunction' in all JS files"
💬 "Run the tests and show me the results"
💬 "What's the current directory structure?"
JURIKO works seamlessly with local LLM servers. Here are some examples:
# Using with LM Studio (Code Llama for coding tasks)
juriko # Select Local provider, use http://localhost:1234/v1
# Using with Ollama (Llama 2 for general tasks)
ollama serve
juriko # Select Local provider, use http://localhost:11434/v1
# Using with custom llama.cpp server
./server -m codellama-7b.gguf --port 8080
juriko # Select Local provider, use http://localhost:8080/v1
Local LLMs are particularly useful for:
JURIKO supports the Model Context Protocol (MCP), allowing you to connect to external tools and resources through MCP servers. This extends JURIKO's capabilities beyond built-in tools.
Create ~/.juriko/mcp-settings.json to configure MCP servers:
{
"mcpServers": {
"filesystem": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/allowed/files"],
"enabled": true
},
"brave-search": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-brave-search"],
"env": {
"BRAVE_API_KEY": "your_brave_api_key_here"
},
"enabled": true
},
"example-sse": {
"type": "sse",
"url": "http://localhost:8080/sse",
"headers": {
"Authorization": "Bearer your_token_here"
},
"enabled": true
},
"example-http": {
"type": "httpStream",
"url": "http://localhost:8080/mcp",
"headers": {
"Authorization": "Bearer your_token_here"
},
"enabled": true
}
}
}
Examples :
{
"mcpServers": {
"llmtxt": {
"type": "sse",
"url": "https://mcp.llmtxt.dev/sse",
"enabled": true,
"description": "LLMTXT MCP server for text processing and utilities",
"timeout": 30000,
"retryAttempts": 3,
"retryDelay": 1000
}
},
"globalTimeout": 30000,
"enableLogging": true,
"logLevel": "info"
}
Local MCP Servers (stdio):
command and args to specify how to launch the serverHTTP Stream MCP Servers:
url and optional headers for authenticationSSE MCP Servers:
url and optional headers for authenticationOnce configured, MCP tools become available in JURIKO with the naming pattern mcp_{server}_{tool}. For example:
mcp_filesystem_read_file - Read files through filesystem servermcp_brave_search_web_search - Search the web using Brave Searchmcp_weather_get_forecast - Get weather data from a weather serverMCP servers can also provide resources (data sources) that JURIKO can access for context, such as:
For detailed MCP setup and troubleshooting, see docs/MCP_INTEGRATION.md.
# Install dependencies
npm install
# Development mode
npm run dev
# Build project
npm run build
# Run linter
npm run lint
# Type check
npm run typecheck
MIT
FAQs
JURIKO - An open-source AI agent that brings the power of AI directly into your terminal.
The npm package @graphteon/juriko-cli receives a total of 0 weekly downloads. As such, @graphteon/juriko-cli popularity was classified as not popular.
We found that @graphteon/juriko-cli demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.

Security News
Fixes for eMudhra and Brotli are out. Getting them everywhere they’re needed means tracking down bundled libraries, runtimes, and certificate stores.

Threat Research
/Security News
Socket uncovered secret-stealing workflows that ran in LiteLLM’s GitHub repository 11 days before the supply chain attack on PyPI and Docker.

Security News
Cloudflare introduces tsrs, a Rust port of TypeScript’s compiler promising faster checks and lower memory use, with the TypeScript team’s help.