Skip to content

kwhorne/elyra

Repository files navigation

Elyra

A self-extensible AI coding agent for the terminal.

Elyra is a monorepo containing a full-stack coding agent: a unified LLM abstraction layer, an agent runtime with tool calling and session management, a rich terminal UI, and an interactive CLI that ties it all together.

Packages

Core

Package Description
@elyracode/coding-agent Interactive coding agent CLI with read, write, edit, bash, grep, and find tools
@elyracode/agent-core Agent runtime -- tool execution loop, session persistence, context compaction, extensions
@elyracode/ai Unified multi-provider LLM streaming API (OpenAI, Anthropic, Google, Mistral, Bedrock, and more)
@elyracode/tui Terminal UI framework with differential rendering, markdown, editor, and image support
@elyracode/web-ui Web components (Lit) for AI chat interfaces, artifacts, and model management

Extensions

Package Description
@elyracode/stack-tall TALL stack profile -- Tailwind, Alpine.js, Laravel, Livewire 4, Flux UI
@elyracode/stack-vilt VILT stack profile -- Vue 3, Inertia.js, Laravel, Tailwind
@elyracode/db-tools Database tools -- query MySQL and ClickHouse with schema awareness
@elyracode/laravel-starters Fetch and customize official Laravel 13.x starter kits from GitHub
@elyracode/stack-primevue PrimeVue 4 -- 80+ UI components for Vue 3 with Laravel/Inertia

Key Features

  • 30+ LLM providers through a unified streaming API with cost tracking
  • Smart model routing -- auto-selects cheap models for simple tasks, powerful models for complex work
  • Codebase memory -- persists project knowledge across sessions
  • Stack detection -- auto-detects TALL/VILT stacks and suggests profile packages
  • Database tools -- query MySQL and ClickHouse directly, with schema discovery and read-only safety
  • Laravel starters -- fetch official starter kits (React, Vue, Svelte, Livewire) as reference context
  • Extension system -- custom tools, skills, prompt templates, themes, and hooks
  • Session management -- branching, context compaction, and HTML export

Getting Started

# Install globally
npm install -g @elyracode/coding-agent

# Set an API key
export ANTHROPIC_API_KEY=sk-ant-...

# Start the agent
elyra

Install extensions

elyra install npm:@elyracode/stack-tall
elyra install npm:@elyracode/stack-vilt
elyra install npm:@elyracode/db-tools
elyra install npm:@elyracode/laravel-starters
elyra install npm:@elyracode/stack-primevue

Development

npm install          # Install all dependencies
npm run build        # Build all packages
npm run check        # Lint, format, and type check
./elyra-test.sh      # Run elyra from sources

npm run check requires npm run build to be run first.

Architecture

@elyracode/ai              LLM streaming, model catalog, cost tracking
    |
@elyracode/agent-core      Agent loop, tool execution, sessions, compaction
    |
@elyracode/coding-agent    CLI, built-in tools, extensions, smart routing, memory
    |
@elyracode/tui             Terminal rendering, editor, markdown
@elyracode/web-ui          Browser UI components (optional)
    |
@elyracode/stack-tall      TALL stack knowledge (extension)
@elyracode/stack-vilt      VILT stack knowledge (extension)
@elyracode/db-tools        MySQL + ClickHouse tools (extension)
@elyracode/laravel-starters  Laravel starter kit fetching (extension)
@elyracode/stack-primevue    PrimeVue 4 component knowledge (extension)

Documentation

Visit kwhorne.github.io/elyra for the full documentation.

Contributing

See CONTRIBUTING.md for contribution guidelines and AGENTS.md for project rules.

License

MIT

About

No description, website, or topics provided.

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors