Skip to main content

Code-Native Engine MVP CLI (Java-focused) with local orchestrator and adapter workflow.

Project description

lesscoder

Code-Native Engine for local AI-assisted coding workflows.

This repository provides an end-to-end loop:

Analyze -> Plan -> Execute -> Verify -> Done

Core Modules

  • ALSP (Rust): repository map, symbol lookup, LSP fallback
  • ALSP_ADAPTER (Rust): local protocol service over TCP
  • Patchlet (Rust): atomic Search/Replace patch apply with backup and rollback
  • Orchestrator (Python): LangGraph-based pipeline and repair routing
  • CLI (lesscoder): run tasks, query trace, start server

Requirements

  • Python 3.11+
  • Java 17+
  • Maven 3.9+
  • Rust toolchain (currently required for lesscoder server)

Install

After package publish:

pip install lesscoder
npm i -g @civilization/lesscoder

From source (development):

pip install -e .

The npm package is a CLI wrapper that invokes the Python runtime.

lesscoder server runtime mode:

  • Dev mode: if local Rust manifest exists, use cargo run.
  • Installed mode: if no manifest, resolve adapter binary from:
    • LESSCODER_ADAPTER_BIN
    • bundled binary (if packaged)
    • local cache ~/.lesscoder/adapter/...
    • GitHub Release auto-download (default repo: MoCuishlei/less-coder)
    • checksum verify via lesscoder_adapter_manifest.json when available

Run

lesscoder warmup --project-root /abs/path/to/your/repo
lesscoder server --host 127.0.0.1 --port 8787
lesscoder run --project-root /abs/path/to/your/repo
lesscoder trace --trace-id <trace_id>
lesscoder release-dry-run --project-root /abs/path/to/your/repo --tag v0.1.0

warmup requires explicit path parameters (--project-root or --manifest-path). server can start without project path, then accept system.warmup(project_root=...) later.

MCP Setup

Start the service first:

lesscoder server --host 127.0.0.1 --port 8787

When server starts, it prints:

  • a ready-to-copy MCP config JSON snippet
  • HTTP inspect endpoints:
    • http://127.0.0.1:8787/health
    • http://127.0.0.1:8787/methods

Then configure your MCP client to launch lesscoder as a local server process. Example config (common mcpServers format):

{
  "mcpServers": {
    "lesscoder": {
      "command": "lesscoder",
      "args": ["mcp", "--adapter-host", "127.0.0.1", "--adapter-port", "8787"]
    }
  }
}

Notes:

  • lesscoder mcp is stdio MCP mode (for OpenCode / IDE MCP clients).
  • project activation is explicit via system.warmup payload (project_root/path).
  • If port 8787 is already occupied, change it in both server args and client settings.
  • Current adapter endpoint is 127.0.0.1:<port> with local protocol v0.
  • Browser inspection endpoints are best-effort diagnostics; MCP calls still use local protocol v0.
  • You can override adapter binary path with LESSCODER_ADAPTER_BIN.

Quick Validation

pytest -q tests/integration

Language Status

  • Java: available now
  • Go / JavaScript / TypeScript / C / C++: planned next

Documentation

  • Project guide: PROJECT_GUIDE.md
  • Docs index: docs/README.md
  • Java runtime guide: docs/Java_Runtime_Guide.md
  • Local protocol: docs/local_protocol_v0.md
  • Worklog index: WORKLOG/README.md

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lesscoder-0.1.3.tar.gz (31.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lesscoder-0.1.3-py3-none-any.whl (32.9 kB view details)

Uploaded Python 3

File details

Details for the file lesscoder-0.1.3.tar.gz.

File metadata

  • Download URL: lesscoder-0.1.3.tar.gz
  • Upload date:
  • Size: 31.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for lesscoder-0.1.3.tar.gz
Algorithm Hash digest
SHA256 85563b7e6846982df8e5ecdc3e5501ebd80945cd2e2e125bcb108fad4bc9c5fa
MD5 789c4849f4c662f587da808908a5090b
BLAKE2b-256 56989add90389d3be039b4b5255a4b0291a39ef1ea904fadd078eeefecba941b

See more details on using hashes here.

File details

Details for the file lesscoder-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: lesscoder-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 32.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for lesscoder-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 febf05d7c6263cb0d908ae73594779b97f7e171a38dcaefba8b2553d7a4e583f
MD5 890b0e096f01c09a03133173c0a9d908
BLAKE2b-256 7755986b7412aca173d54c9deef23c2ee17bda40e2a6cc80ba3159f815ae5010

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page