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.7.tar.gz (32.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.7-py3-none-any.whl (34.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: lesscoder-0.1.7.tar.gz
  • Upload date:
  • Size: 32.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.7.tar.gz
Algorithm Hash digest
SHA256 4b43b58cb3ebef6af8d8aa67561e1a93237b65d332a17f8cf2f66a824c90c37c
MD5 311d3179118194fb692cb245326ffaf5
BLAKE2b-256 1c5eadf86f3cf787211fcd434e44bbfe355bdcdbbab6eb934d6b7483cffb1395

See more details on using hashes here.

File details

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

File metadata

  • Download URL: lesscoder-0.1.7-py3-none-any.whl
  • Upload date:
  • Size: 34.0 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.7-py3-none-any.whl
Algorithm Hash digest
SHA256 fb9f8aa78bc5cef98ccc43f5dc346c3c889f22a858fbc51e1dedf92748509808
MD5 1d24bdc14e2a1ef2b15cc9075b4fa1be
BLAKE2b-256 1c1ab981bcf912ae40c0aeecb6bce3f35f0b19719f6716668ffed30c385af519

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