agentic_coding_flywheel_setup Agent工作流 是 AI Skill Hub 本期精选Agent工作流之一。已获得 1.5k 颗 GitHub Star,综合评分 8.2 分,整体质量较高。我们强烈推荐将其纳入你的 AI 工具库,帮助提升工作效率。
面向开发者的开源工作流,可自动将Ubuntu VPS配置成完整的多智能体AI开发环境。集成多种AI工具链和工作流框架,支持快速启动AI代理项目。适合需要快速搭建AI开发基础设施的工程师和创业团队。
agentic_coding_flywheel_setup Agent工作流 是一套完整的 AI Agent 自动化工作流方案。通过可视化的节点编排,将复杂的多步骤任务拆解为清晰的自动化流程,实现全程无人值守的智能处理。支持与数百种外部服务和 API 无缝集成,适合构建数据处理管线、业务自动化和 AI 辅助决策系统。
面向开发者的开源工作流,可自动将Ubuntu VPS配置成完整的多智能体AI开发环境。集成多种AI工具链和工作流框架,支持快速启动AI代理项目。适合需要快速搭建AI开发基础设施的工程师和创业团队。
agentic_coding_flywheel_setup Agent工作流 是一套完整的 AI Agent 自动化工作流方案。通过可视化的节点编排,将复杂的多步骤任务拆解为清晰的自动化流程,实现全程无人值守的智能处理。支持与数百种外部服务和 API 无缝集成,适合构建数据处理管线、业务自动化和 AI 辅助决策系统。
# 克隆仓库 git clone https://github.com/Dicklesworthstone/agentic_coding_flywheel_setup cd agentic_coding_flywheel_setup # 查看安装说明 cat README.md # 按 README 完成环境依赖安装后即可使用
# 查看帮助 agentic_coding_flywheel_setup --help # 基本运行 agentic_coding_flywheel_setup [options] <input> # 详细使用说明请查阅文档 # https://github.com/Dicklesworthstone/agentic_coding_flywheel_setup
# agentic_coding_flywheel_setup 配置说明 # 查看配置选项 agentic_coding_flywheel_setup --config-example > config.yml # 常见配置项 # output_dir: ./output # log_level: info # workers: 4 # 环境变量(覆盖配置文件) export AGENTIC_CODING_FLYWHEEL_SETUP_CONFIG="/path/to/config.yml"
<p align="center"> <strong>🌐 <a href="https://agent-flywheel.com">agent-flywheel.com</a></strong> — Interactive setup wizard for beginners </p>
From zero to fully-configured agentic coding VPS in 30 minutes. A complete bootstrapping system that transforms a fresh Ubuntu or Arch-based machine into a professional AI-powered development environment.
|
The Vision Beginner with laptop → Wizard → VPS → Agents coding for you |
{ acfs_installer="$(curl -fsSL "https://raw.githubusercontent.com/Dicklesworthstone/agentic_coding_flywheel_setup/main/install.sh")" || acfs_installer="$(curl -fsSL "https://cdn.jsdelivr.net/gh/Dicklesworthstone/agentic_coding_flywheel_setup@main/install.sh")"; } && printf '%s\n' "$acfs_installer" | bash -s -- --yes --mode vibe
[!NOTE]raw.githubusercontent.comis listed first deliberately. jsDelivr caches a mutable@mainreference, so it can serve an installer that is hours or days behind the repository. When that happens the stale installer's bootstrap extraction list does not match the current checksum ledger and the install fails withINTEGRITY: <file> missing— a failure that looks like a repository defect but is purely a CDN cache artifact. Keeping the authoritative source primary and the CDN as fallback preserves the resilience without that failure mode. Please do not reorder these. Each download is buffered before execution so a failed request cannot concatenate a partial installer with the fallback response.
The installer is idempotent—if interrupted, simply re-run it. Resume revisits installation phases and uses component checks to repair incomplete installations.
Using a cloud agent instead of a VPS? The cloud agent guide has tested Claude Code / Codex setups and researched recipes for other Linux agents. See cloud environments.
Production environments: For stable, reproducible installs, pin to a tagged release or specific commit:Tagged releases are tested and stable. Passing> # Preferred: use a tagged release (e.g., v0.9.0) > curl -fsSL "https://raw.githubusercontent.com/Dicklesworthstone/agentic_coding_flywheel_setup/v0.9.0/install.sh" | bash -s -- --yes --mode vibe --ref v0.9.0 > > # Alternative: pin to a specific commit SHA > curl -fsSL "https://raw.githubusercontent.com/Dicklesworthstone/agentic_coding_flywheel_setup/abc1234/install.sh" | bash -s -- --yes --mode vibe --ref abc1234 >--refensures all fetched scripts use the same version.
---
./scripts/lib/security.sh --update-checksums > /tmp/acfs-checksums.candidate.yaml diff -u checksums.yaml /tmp/acfs-checksums.candidate.yaml # Review what changed cp /tmp/acfs-checksums.candidate.yaml checksums.yaml git commit -m "chore: update upstream checksums" ```
The installer is the heart of ACFS—a modular Bash script that transforms a fresh Ubuntu or Arch-based machine into a fully-configured development environment.
| Mode | Passwordless Sudo | Agent Flags | Best For |
|---|---|---|---|
| **vibe** | Yes | --dangerously-skip-permissions | Throwaway VPS, maximum velocity |
| **safe** | No | Standard confirmations | Production-like environments |
The installer provisions a few keys in ~/.claude/settings.json, always merging non-destructively (a value you have already set is never overridden):
| Key | Value | Mode | Why |
|---|---|---|---|
cleanupPeriodDays | 99999 | all modes | Claude Code silently deletes session transcripts older than this (default **30 days**) from ~/.claude/projects — with no warning or log line. That default destroys history before cass can index it, so ACFS sets an explicit high value; lower it yourself if you actually want pruning. |
skipDangerousModePermissionPrompt | true | vibe only | Avoids interactive workspace-trust prompts for coding agents. |
Before a verified installer replaces a tool binary, the previous binary is retained at <binary>.prev. After the install, a smoke check probes the fresh binary with a per-tool argument (update_tool_smoke_probe in scripts/lib/update.sh: fsfs version, mdwb --help, pfr --help) or, for tools without an entry, the chain --version → --help → version. Every probe is headless-safe and runs with stdin detached under a 20 s ceiling. Verdicts:
- healthy — a probe exited 0. - unsupported — every probe was rejected as an unknown argument (usage error). The binary ran, so it is kept and logged as POST-INSTALL VERIFICATION UNAVAILABLE; no rollback, no backoff. - broken — a probe timed out, could not execute, died by signal, or failed without a usage-style rejection (crash, traceback, missing runtime). The previous binary is restored atomically and the failure is recorded in ~/.local/state/acfs/update-rollback.state so nightly runs back off instead of reinstalling the same broken release every night.
acfs doctor reports rolled back tools; acfs-update --force retries immediately. A backoff also ends as soon as the tool's pinned installer changes or its GitHub repo publishes a new release, because neither has failed yet.
acfs-update exit codes distinguish partial from total failure: 0 all succeeded, 1 total failure (nothing updated), 2 partial failure (some tools updated, some failed).
The installer transforms a fresh VPS. The update command maintains an existing installation. Separating them allows: - Focused updates: Update just agents without touching system packages - Dry-run previews: See what would change before committing - Skip flags: Temporarily exclude categories that are working fine - Stack control: Stack updates are included by default; skip with --no-stack - Automated updates: Run via cron with --yes --quiet
---
Build a portable `acfs-i
Full vibe mode (recommended for throwaway VPS):
{ acfs_installer="$(curl -fsSL "https://raw.githubusercontent.com/Dicklesworthstone/agentic_coding_flywheel_setup/main/install.sh")" || acfs_installer="$(curl -fsSL "https://cdn.jsdelivr.net/gh/Dicklesworthstone/agentic_coding_flywheel_setup@main/install.sh")"; } && printf '%s\n' "$acfs_installer" | bash -s -- --yes --mode vibe
Interactive mode (asks for confirmation):
curl -fsSL "https://raw.githubusercontent.com/Dicklesworthstone/agentic_coding_flywheel_setup/main/install.sh" | bash
Safe mode (no passwordless sudo, agent confirmations enabled):
curl -fsSL "https://raw.githubusercontent.com/Dicklesworthstone/agentic_coding_flywheel_setup/main/install.sh" | bash -s -- --mode safe
acfs-update # Update apt, runtimes, shell, agents, cloud CLIs, and stack tools
acfs-update --agents-only # Only update coding agents
acfs-update --runtime-only # Only update runtimes (bun, rust, uv, go)
acfs-update --dry-run # Preview changes without making them
acfs-update --yes --quiet --no-self-update
# Automated mode that avoids changing the ACFS tree itself
acfs-update --bootstrap-self-update
# Explicitly convert a non-git or incomplete install into a git checkout
--bootstrap-self-update replaces ACFS repository files with origin/main. Copy local files elsewhere or commit local edits before opting in. Routine updates leave non-git and incomplete Git installs untouched.
The control-plane boundary: with --no-self-update (the shipped nightly timer's default), automated runs update your stack tools but never ACFS itself -- neither the git checkout nor the deployed runtime copies under ~/.acfs (bin/acfs, bin/acfs-update, scripts/lib/*.sh). The control plane therefore needs its own periodic refresh: run acfs-update without --no-self-update from time to time, or git pull --rebase the checkout and then run acfs-update --shell-only to redeploy the runtime copies. acfs doctor warns (updates.runtime_skew) when the checkout and the deployed runtime disagree, so a stack kept current by the nightly cannot silently outrun a stale dispatcher.
Temp space: if TMPDIR (default /tmp) refuses a test write, because it is full or over a per-user tmpfs quota, acfs-update moves the run to the first of ACFS_UPDATE_TMPDIR, /data/tmp, /var/tmp and ~/.cache/acfs/tmp that accepts one. Verified installers are staged in a system directory instead of TMPDIR: /tmp, or /var/tmp when /tmp refuses the write.
The public cloud agent setup guide selects the right recipe for your provider. Claude Code and ChatGPT / Codex have hosted test evidence; Amp Orbs, Devin and Grok Bot have documentation-based recipes awaiting hosted acceptance. Meta Muse needs shell/runtime and persistence checks before an installation recipe can be accepted. The installer retains its original filename and supports claude, codex and provider-neutral generic modes.
The same public bundles work in a Linux x86_64 Codex cloud environment. In Work in → Cloud, create or edit an environment and put this in its Install script:
#!/bin/bash
(
set -o pipefail
acfs_cloud_root="$(git rev-parse --show-toplevel)" || exit 1
acfs_cloud_setup="$(curl -q -fsSL --proto '=https' --proto-redir '=https' --connect-timeout 5 --max-time 20 -A 'acfs (+https://github.com/Dicklesworthstone/agentic_coding_flywheel_setup)' -H 'Accept-Encoding: identity' https://raw.githubusercontent.com/Dicklesworthstone/agentic_coding_flywheel_setup/main/scripts/claude-code-web-setup.sh)" || { printf '%s\n' 'ACFS cloud bootstrap download failed; tools were not installed. Check network access and retry.' >&2; exit 1; }
printf '%s\n' "$acfs_cloud_setup" | ACFS_CLOUD_SKILL_DIR="$acfs_cloud_root/.agents/skills/acfs-cloud-tools" ACFS_CLOUD_AGENT=codex ACFS_CLOUD_ROOT="$acfs_cloud_root/.acfs-cloud" bash || exit 1
acfs_cloud_exclude="$(git rev-parse --git-path info/exclude)" || exit 1
mkdir -p "$(dirname "$acfs_cloud_exclude")" || exit 1
printf '\n/.acfs-cloud/\n/.agents/skills/acfs-cloud-tools/\n' >> "$acfs_cloud_exclude"
) || exit 1
Enable internet access and add raw.githubusercontent.com and downloads.agent-flywheel.com to Additional allowed domains. These public downloads need no secrets or ownership of the tool repositories. The recipe installs into the writable repository workspace because hosted home/config paths can be read-only, and excludes its data directory through local Git metadata. It preserves HOME and CODEX_HOME. Review <repo>/.acfs-cloud/.acfs/cloud/setup.log, then Publish the prepared environment. After changing its setup, Republish for new tasks. See OpenAI's current cloud environment guide.
Save these instructions in the environment's Start skill and include them at the start of each new task. Our hosted checks reused all eleven executables but did not automatically load the saved Start skill or generated repository skill; explicitly loading the guide and setting PATH works:
Find the repository root with git rev-parse --show-toplevel.
Read <repo>/.acfs-cloud/.codex/AGENTS.md for the installed flywheel tools and <repo>/.acfs-cloud/.acfs/cloud/setup.log for failures.
In each task shell, run acfs_cloud_root="$(git rev-parse --show-toplevel)/.acfs-cloud"; export PATH="$acfs_cloud_root/.local/bin:$PATH" before using the tools.
Follow the guide's CASS_DATA_DIR, CASS_MEMORY_HOME and JFP_HOME exports in each task shell so search data, memory and prompt caches use the writable workspace; preserve existing overrides and keep any XDG_DATA_HOME/XDG_CONFIG_HOME writable.
Before using Agent Mail with a read-only HOME, follow the guide's command-scoped STORAGE_ROOT recipe; reuse existing configuration and preserve DATABASE_URL.
Before using JSM with a read-only HOME, follow the guide's command-scoped XDG recipe; reuse existing configuration and check skill installation targets separately.
Before using MS, follow the guide's local initialization and indexing steps in a writable project; reuse existing .ms/MS_ROOT/MS_CONFIG state.
Check br --version, bv --version, ubs --version and jsm --version before starting work.
Use br ready --json and bv --robot-triage; never open their interactive TUIs.
Codex mode preserves existing instructions outside its managed block. Without a custom root it uses $CODEX_HOME/AGENTS.md or ~/.codex/AGENTS.md; a nonempty AGENTS.override.md takes precedence, so setup warns. The workspace recipe also creates .agents/skills/acfs-cloud-tools/SKILL.md in Codex's documented repository skill location; an existing skill at that path is preserved. Reading that skill loads the separate guide and configures PATH. Automatic hosted catalog discovery failed in our checks: a fresh task still omitted it after removing its Git exclusion, so changing exclusions is not a proven fix. Use the explicit startup instructions above. See OpenAI's instruction discovery rules. Agent Mail is available as a CLI; this setup does not configure or claim hosted MCP support. Local Codex MCP configuration and ChatGPT's remote MCP connections are different surfaces; see OpenAI's MCP guide.
If your UI instead has Setup script and Maintenance script, it uses the legacy environment workflow. Put the install command in Setup script; avoid reinstalling in Maintenance script on every cached resume. Configure task-phase internet separately if tools need online access after setup.
Verification boundary: both installer modes are tested on Ubuntu 24.04, including real public downloads. On 2026-10-08, a fresh Claude-hosted Full session pinned to 4a0e6bfa792ce73ad4c69847755ecd64384288c2 installed all ten tools in 12 seconds; all eleven versions passed, the guide loaded automatically, and Agent Mail's stdio MCP health check passed. On 2026-10-09, a cold default-Trusted Claude session pinned to 31c8180860f9ed461d9843d6ed298939a5b3ea74 installed all ten tools through public fallbacks in 53 seconds; all eleven versions, automatic instructions and actual Agent Mail MCP health passed. That run's first UBS helper download failed TLS; its release-hash-verified recovery was tested separately. The later complete UBS fallback removes that lazy module download, but has not been rerun in that hosted session. Codex hosted installation took 6 seconds at 140a845d; fresh published tasks reused all eleven executables, including after the repository-skill update at 4bdbf5a7. A task that explicitly loaded the guide configured PATH and passed all eleven probes. Automatic Codex skill loading remains open. These times describe the pinned earlier recipes, not a fresh hosted acceptance of later changes. The script reports individual failures but exits zero; successful session startup alone does not prove every tool installed. Default UBS exit 0 can include warnings; inspect its report or use --ci --fail-on-warning for a warning-strict check.
A no-flags install keeps supported Ubuntu 22.04 and 24.04 LTS hosts on their current release. Non-root users with sudo and Ubuntu 24.04 Docker/WSL environments can install ACFS without opting into an OS upgrade.
Pass --target-ubuntu=26.04 to explicitly request an upgrade to Ubuntu 26.04 LTS. An OS upgrade requires a root-run installer on a host that can reboot; it is separate from installing or updating the ACFS tools.
How it works: 1. Detects your current Ubuntu version 2. Calculates a supported upgrade path (e.g., 24.04 → 26.04 LTS) 3. Performs sequential do-release-upgrade operations 4. Reboots after each upgrade (handled automatically) 5. Resumes via systemd service after reboot 6. Continues ACFS installation once at target version
Expected timeline: - Each version hop takes 30-60 minutes - Multiple LTS hops take longer; the path must be offered by Ubuntu's stable release upgrader - SSH sessions disconnect during reboots (reconnect to monitor)
To explicitly request the 26.04 LTS upgrade:
curl -fsSL "https://raw.githubusercontent.com/Dicklesworthstone/agentic_coding_flywheel_setup/main/install.sh" | bash -s -- --yes --mode vibe --target-ubuntu=26.04
To suppress an explicit upgrade request:
curl -fsSL "https://raw.githubusercontent.com/Dicklesworthstone/agentic_coding_flywheel_setup/main/install.sh" | bash -s -- --yes --mode vibe --target-ubuntu=26.04 --skip-ubuntu-upgrade
--skip-ubuntu-upgrade wins regardless of flag order. Neither this flag nor an ordinary no-target install bypasses an active system upgrade checkpoint: normal installation remains blocked until the unfinished upgrade is resolved. Inspect the checkpoint and resume logs before retrying; keep the recovery state intact.
Monitoring upgrade progress: ```bash
Category Selection:
--apt-only Only update system packages
--agents-only Only update coding agents
--cloud-only Only update cloud CLIs
--shell-only Only update shell tools (OMZ, P10K, plugins, Atuin, Zoxide)
--runtime-only Only update runtimes (bun, rust, uv, go)
--stack Include Agent Flywheel stack tools (enabled by default)
Skip Categories:
--no-apt Skip apt updates
--no-agents Skip agent updates
--no-cloud Skip cloud CLI updates
--no-shell Skip shell tool updates
--no-runtime Skip runtime updates (bun, rust, uv, go)
Behavior:
--force Install missing tools (not just update existing)
--dry-run Preview changes without making them
--yes, -y Non-interactive mode (skip prompts)
--quiet, -q Minimal output (only errors and summary)
--verbose, -v Show detailed command output
--abort-on-failure Stop on first failure (default: continue)
After installation, the acfs command provides a unified interface for managing your environment. Each subcommand is designed to be fast, informative, and scriptable.
acfs info # Lightning-fast system overview
acfs cheatsheet # Discover installed aliases
acfs dashboard generate # Generate HTML status page
acfs doctor # Health checks
acfs newproj # Create a new project (TUI or CLI)
acfs agents update # Regenerate the flywheel agent guide (ACFS-owned)
acfs agents install --help # Explicitly deploy the guide (never overwrites)
acfs update # Update all tools
acfs holds # List per-tool version holds (acfs hold/unhold to manage)
acfs services status # Check Agent Mail, CM, and CASS daemons
acfs services-setup # Configure agent credentials
acfs continue # View upgrade progress after reboot
acfs installer-cache build # Cache checksum-pinned installer entrypoints
| Component | Path | Technology | Purpose |
|---|---|---|---|
| **Manifest** | acfs.manifest.yaml | YAML | Single source of truth for all tools |
| **Generator** | packages/manifest/src/generate.ts | TypeScript/Bun | Produces installer scripts from manifest |
| **Website** | apps/web/ | Next.js 16 + Tailwind 4 | Step-by-step wizard for beginners |
| **Installer** | install.sh | Bash | One-liner bootstrap script |
| **Lib Scripts** | scripts/lib/ | Bash | Modular installer functions |
| **Generated Scripts** | scripts/generated/ | Bash/data | Source-only category libraries and harness, doctor checks, manifest metadata, and the schema-1 internal checksum ledger |
| **Configs** | acfs/ | Shell/Tmux configs | Files deployed to ~/.acfs/ |
| **Onboarding** | acfs/onboard/ | Bash + Markdown | Interactive tutorial system |
| **Checksums** | checksums.yaml | YAML | SHA256 hashes for upstream installers |
---
The TypeScript generator (packages/manifest/src/generate.ts) reads the manifest and produces:
1. Category Libraries (scripts/generated/install_base.sh, install_agents.sh, etc.) - One source-only file per category with private module functions - Consistent logging and error handling - Verification checks after each module - Direct execution fails closed because a single category cannot satisfy cross-category dependencies
2. Doctor Checks (scripts/generated/doctor_checks.sh) - All verify commands extracted into a runnable health check - Tab-delimited format (to safely handle || in shell commands) - Reports pass/fail/skip for each module
3. Generated Harness (scripts/generated/install_all.sh) - Sources all category libraries - Invokes private module functions in global dependency order - Sourceable generated-module harness; direct execution refuses because it omits orchestration-owned modules and production dispatcher semantics
4. Runtime Data (scripts/generated/manifest_index.sh, internal_checksums.sh) - Deterministic module/category/generated-ownership metadata - Closed-grammar schema-1 digests for checksum-controlled runtime scripts
Note: Productioninstall.shis the only supported installation entry point. It sources the category libraries and dispatches their private functions through its phase runner; it does not callinstall_all.sh.
To regenerate after manifest changes:
cd packages/manifest
bun run generate # Generate scripts
bun run generate:dry # Preview without writing
优秀的基础设施自动化项目,降低AI开发环境搭建门槛。Star数合理,维护活跃,对需要快速迭代的团队很有价值。
该工具使用 NOASSERTION 协议,商用场景请仔细阅读协议条款,必要时咨询法律意见。
AI Skill Hub 为第三方内容聚合平台,本页面信息基于公开数据整理,不对工具功能和质量作任何法律背书。
建议在沙箱或测试环境中充分验证后,再部署至生产环境,并做好必要的安全评估。
📄 NOASSERTION — 请查阅原始协议条款了解具体使用限制。
经综合评估,agentic_coding_flywheel_setup Agent工作流 在Agent工作流赛道中表现稳健,质量优秀。如果你已有明确的使用需求,可以直接上手体验;如果还在评估阶段,建议对比同类工具后再做决策。
| 原始名称 | agentic_coding_flywheel_setup |
| 原始描述 | 开源AI工作流:Bootstraps a fresh Ubuntu VPS into a complete multi-agent AI development environ。⭐1.5k · Shell |
| Topics | 多智能体自动化部署AI开发环境VPS配置工作流自动化 |
| GitHub | https://github.com/Dicklesworthstone/agentic_coding_flywheel_setup |
| License | NOASSERTION |
| 语言 | Shell |
收录时间:2026-05-16 · 更新时间:2026-05-19 · License:NOASSERTION · AI Skill Hub 不对第三方内容的准确性作法律背书。
选择 Agent 类型,复制安装指令后粘贴到对应客户端