skiff

agent
Guvenlik Denetimi
Basarisiz
Health Uyari
  • License — License: MIT
  • Description — Repository has a description
  • Active repo — Last push 0 days ago
  • Low visibility — Only 6 GitHub stars
Code Basarisiz
  • rm -rf — Recursive force deletion command in apps/desktop/scripts/appimage-repack.sh
Permissions Gecti
  • Permissions — No dangerous permissions requested

Bu listing icin henuz AI raporu yok.

SUMMARY

The multi-agent coding terminal. Run Claude Code, Codex and other agents in parallel on Linux and macOS. They send each other tasks and report back.

README.md

Skiff, with the crew: Admiral and five Skippers

Latest release MIT license Platforms: Linux and macOS

The multi-agent coding terminal.

Run Claude Code, Codex and other agents in parallel. They send each other tasks and report back.

Skiff Mission control in v1.9.4: Admiral and the Skippers as terminal windows, each with its own face. The projects hang under each Skipper in a fixed tree, and solid connectors run from each owner to its session cards. Amber cards wait for approval.

Skiff is a terminal app for coding agents, on Linux and macOS. You code with Claude Code,
Codex and other agents in its panes, many at once, across projects and Git worktrees.
Each pane shows what its agent needs: a bell when it asks for approval, a flag when it
finished a turn out of sight. Admiral, the Skiff agent, hands tasks to your other agents
and to project Skippers, and collects their results in a ledger. Any agent can do the
same with the skiff command.

Philosophy

Skiff manages sessions. The apps you already have do everything else. Skiff does not
edit files: it opens them in the editor, diff tool or file manager you set in
Settings › Open with.

Sessions outlive the window. skiffd, a daemon, owns every terminal. Close the window
and the agents keep running.

Skiff stays out of your agents' setup. It installs no hooks or plugins. It reads a
session's state from its screen and from the program in front of the terminal. All
settings live in one file, projects.toml.

Install

Download the latest release:

  • Linux (x86_64): .deb, .rpm or AppImage
  • macOS (Apple Silicon): .dmg, signed and notarized

The skiff command ships with the app. It drives sessions from a shell or from an agent.
See the CLI page.

Start

  1. Add a project: a Git repository or a plain folder.
  2. Make worktrees in it, and start agent or shell sessions in each one.
  3. Put related sessions side by side in a named group.
  4. Click the top row, Admiral, to start the Skiff agent. It hands tasks to your sessions
    and tracks them in a ledger.

Press F1 for every key. Press Ctrl+Shift+A for Mission control, the whole agent hierarchy as a graph. The wiki has the
details: Skiff agent,
Open with,
skiffd.

Layout

crates/skiff-host-api Host contract types (no I/O)
crates/skiff-core    session model, wire protocol, projects.toml config, git, themes
crates/skiffd        daemon: owns every PTY, serves clients over a Unix socket
crates/skiff-host    Host data plane: projects, Git, files, images, ledger and Skipper over the Host API
crates/skiff-client  async client for the socket; Skiff agent setup shared by the app and the CLI
crates/skiff-cli     the `skiff` command: sessions, groups, the Skiff agent's ledger and watcher
apps/desktop         Tauri v2 app, vanilla TypeScript + xterm.js
  src-tauri          Rust side: config, git, open with, the skiffd connection, menus
  src/app            state, actions, keyboard, startup connections
  src/ui             DOM builders, dialogs, menus
  src/workspace      session tree, fleets, layouts, files, project actions
  src/terminal       xterm runtime, panes, search, clipboard, font size
  src/appearance     themes, colors, icons, settings
  src/i18n           UI words: t() and tn(), catalogs en.ts (source), es.ts and zh.ts
  src/platform       wire types, IPC bytes, file actions
  src/diagnostics    latency traces and memory counts
  src/styles         styles by owner, imported in cascade order

Development

Every window has one selected Host. Sessions, projects, Git, files, images, ledger,
Skipper and agents come from that Host through the Host API.
This Mac is the local Host. Add an SSH Host in Settings › Hosts to work with a
server through the same surfaces. The app keeps only client-owned settings, window
state, known Hosts and local Open with applications.

cd apps/desktop && pnpm install && pnpm tauri dev
CARGO_BUILD_JOBS=8 cargo test -p CRATE TEST_NAME
cd apps/desktop && pnpm bundle   # packages for this OS, with skiffd inside

During a task, run only the tests for the code you changed. See
AGENTS.md. The Glossary
names the parts of the screen and the session tree.

A rebuild does not replace the running daemon. Run skiff daemon reload after
cargo build -p skiffd. When the daemon changes, raise the skiffd version in
crates/skiffd/Cargo.toml and crates/skiff-core/Cargo.toml. When the reload handover
metadata changes, raise HANDOVER in crates/skiffd/src/session/reload.rs. Set
SKIFF_SOCKET to another path for a test daemon with its own state. See
skiffd › Development.

A v* tag builds every package in CI and attaches them to a draft release.

License

MIT

Yorumlar (0)

Sonuc bulunamadi