draught

agent
Guvenlik Denetimi
Uyari
Health Uyari
  • License — License: Apache-2.0
  • Description — Repository has a description
  • Active repo — Last push 0 days ago
  • Low visibility — Only 5 GitHub stars
Code Gecti
  • Code scan — Scanned 4 files during light audit, no dangerous patterns found
Permissions Gecti
  • Permissions — No dangerous permissions requested

Bu listing icin henuz AI raporu yok.

SUMMARY

Provider-agnostic coding-agent runtime and CLI for Elixir and the BEAM

README.md

Draught

CI
Elixir
Erlang/OTP
License

Draught is a provider-agnostic coding-agent CLI and runtime built with Elixir. Run tasks interactively or headlessly with Ollama or an OpenAI-compatible provider.

Installation

Download the archive for the current operating system and architecture from the v0.1.0-beta.10 release. The available targets are:

System Architecture Target
macOS Apple silicon macos_arm64
macOS Intel macos_x86_64
Linux ARM64 linux_arm64
Linux x86_64 linux_x86_64

Set TARGET to the matching value, then verify and install the archive:

VERSION=0.1.0-beta.10
TARGET=macos_arm64
BASE_URL="https://github.com/ccarvalho-eng/draught/releases/download/v${VERSION}"
ARCHIVE="draught-${TARGET}.tar.gz"

curl --fail --location --remote-name "${BASE_URL}/${ARCHIVE}"
curl --fail --location --remote-name "${BASE_URL}/${ARCHIVE}.sha256"

if command -v sha256sum >/dev/null 2>&1; then
  sha256sum --check "${ARCHIVE}.sha256"
else
  shasum -a 256 --check "${ARCHIVE}.sha256"
fi

tar -xzf "${ARCHIVE}"
mkdir -p "$HOME/.local/bin"
install -m 755 "draught_${TARGET}" "$HOME/.local/bin/draught"
"$HOME/.local/bin/draught" --version

The native executable includes its Erlang runtime; Elixir and Erlang/OTP are not required. Add $HOME/.local/bin to PATH to invoke the command as draught. See Getting started for Ollama and model setup, and Distribution for source builds, upgrades, and uninstalling.

Native beta archives currently use line-oriented interactive input because of an upstream Burrito terminal issue. Build or install the escript when cursor editing, command completion, multiline shortcuts, or bracketed paste is required. Draught tracks adoption of the upstream fix in #143.

Motivation

Draught, pronounced "draft", can mean a drink or a dose of medicine, suggesting a measured approach to assistance. The name also echoes "draft": a starting point to examine, revise, and develop into your own solution. Assistance contributes to the work; it does not make the result final or replace your judgment.

Local control and privacy

Running a model locally can keep prompts, source code, and model responses on the user's machine instead of sending them to a hosted inference service. Draught supports that workflow through Ollama while keeping the provider boundary open for other deployments. Privacy still depends on the selected provider and enabled tools: web access and remote integrations can transmit data outside the machine, so those capabilities remain explicit.

An OTP foundation for agents

The architectural inspiration is the actor model and OTP supervision: keep conversation state separate from the work performed on its behalf. Sessions own their lifecycle; model requests and tool calls execute in isolated, supervised tasks with explicit timeouts and cancellation. Pure functions define state transitions and permission policies. This separation provides failure boundaries without making the model responsible for runtime safety. Restarting a process is not permission to repeat an edit or command. See Architecture for the supervision and execution contracts.

Draught was also informed by Yoke, formerly DSH, and its exploration of an actor-driven harness in Elixir. Thanks to Oeditus for publishing the project and its design discussion openly.

An opportunity to stay engaged

Local models may need more guidance and checking than top-tier hosted models, depending on the model and task. If you work with one, consider using that extra involvement as an opportunity to learn: investigate why a suggestion fails, consult the documentation, ask for explanations, and test your own understanding. More intervention can be frustrating, but it can also leave room for hands-on practice instead of delegating the entire problem.

Research offers a reason to value that engagement:

These studies concern learning in specific settings. They do not establish long-term cognitive effects or show that weaker models teach better. Draught has not been evaluated for learning outcomes.

Documentation

Read Getting started for setup, or browse the documentation index for CLI, provider, architecture, and security guides.

Security

Draught treats model output and external content as untrusted. Workspace confinement is not an operating-system sandbox. Read the security policy for trust boundaries and private vulnerability reporting.

Contributing

Read CONTRIBUTING.md for the development workflow and enforced quality standards.

License

Draught is available under the Apache License 2.0.

Yorumlar (0)

Sonuc bulunamadi