Skip to content

rowino/laracode

Repository files navigation

LaraCode

An autonomous build system for Laravel projects using Claude AI. LaraCode breaks down features into structured tasks and executes them sequentially with dependency resolution.

Installation

composer global require laracode/laracode

Quick Start

1. Initialize a Project

cd your-laravel-project
laracode init

2. Create a Plan

Use plan mode to design your feature. When done, press esc and run:

/generate-tasks

3. Run the Build

laracode build .laracode/specs/my-feature/tasks.json --mode=yolo

4. Start Watch Mode

laracode watch

5. Review and Refine

Add @ai comments in your code to request changes:

// @ai Refactor this method to use dependency injection
// @ai Add proper error handling

6. Submit for Processing

Add ai! when ready to trigger Claude:

// @ai Refactor this method to use dependency injection
// @ai Add proper error handling
// ai!

Task Generation

laracode self-update

Updates LaraCode to the latest version from GitHub releases.

# Update to latest stable version
laracode self-update

# Check for updates without installing
laracode self-update --check

# Include pre-release versions
laracode self-update --unstable

# Rollback to previous version
laracode self-update --rollback

Note: Self-update only works when running from the PHAR binary. For development installs, use composer update instead.

Task Generation with /generate-tasks

The /generate-tasks skill generates structured task files from conversations or spec files.

Output

✓ Generated tasks for: Blog Module

Directory: .laracode/specs/blog-module/
  - spec.md
  - tasks.json

Tasks: 12 total
  Setup: 2 (priority 1-10)
  Core: 6 (priority 11-80)
  Tests: 3 (priority 81-95)
  Docs: 1 (priority 96-99)

Task Granularity

Complexity Task Count Example
Simple 5-8 tasks Login form, settings page
Medium 10-20 tasks User auth system, CRUD module
Complex 30-100+ tasks Multi-tenant platform

Build Command

Runs the autonomous build loop using a tasks.json file.

laracode build <path-to-tasks.json> [options]

Options

Option Default Description
--iterations 100 Maximum number of tasks to execute
--delay 3 Seconds between tasks
--mode yolo Permission mode: yolo, accept, or default

Examples

laracode build .laracode/specs/feature/tasks.json
laracode build .laracode/specs/feature/tasks.json --mode=yolo
laracode build .laracode/specs/feature/tasks.json --iterations=10

Watch Mode

Monitors files for @ai comments and triggers Claude processing.

laracode watch [options]

Options

Option Default Description
--paths app/, routes/, resources/, tests/ Directories to watch
--search-word @ai Comment marker to search for
--stop-word ai! Trigger word to start processing
--mode interactive Permission mode: yolo, accept, interactive

Setup

Watch mode requires Node.js with chokidar:

npm install chokidar

Configuration

Create .laracode/watch.json for persistent settings:

{
    "paths": ["app/", "routes/", "resources/", "tests/"],
    "searchWord": "@ai",
    "stopWord": "ai!",
    "mode": "interactive",
    "excludePatterns": ["**/vendor/**", "**/node_modules/**"]
}

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors