Agent skill

Vm Provisioning

by TwiTech-LAB in TwiTech-LAB/devchain

Prepare a DevChain remote VM for development of a project. An agent skill from TwiTech-LAB/devchain.

MITAuto-check: notesDevOps & Cloud

Install Vm Provisioning

skills CLI
$ npx skills add TwiTech-LAB/devchain --skill vm-provisioning -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install TwiTech-LAB/devchain vm-provisioning --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/TwiTech-LAB/devchain.git skills-src && mkdir -p .claude/skills && cp -r skills-src/apps/local-app/skills/vm-provisioning .claude/skills/vm-provisioning && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
vm-provisioning
GitHub stars
101
Token cost
~1.8k tokens
SKILL.md length
944 words
Files
2
Skills in repo
6
Repo updated
First seen
Licence
MIT

At a glance

Prepare a DevChain remote VM for development of a project. An agent skill from TwiTech-LAB/devchain.

  • Works in 7 steps: Find the script → Check → Find the requirements → …
  • Asks to provision
  • SKILL.md covers Step 0 — Find the script, Step 1 — Check, Step 2 — Find the requirements and Step 3 — Install what is missing, plus 4 more sections
  • Runs Shell scripts from its folder; calls nvm, docker and curl

What it does

Vm Provisioning is an agent skill from TwiTech-LAB/devchain. Prepare a DevChain remote VM for development of a project. Find the tools the project needs from its CI, version files, manifests and docs, install the missing ones, and mark the project as provisioned on this VM. Runs only on a claimed DevChain VM. Use at agent start when devchain status prints remote VM, when a command on the VM fails because a tool is missing, or when the user asks to provision or prepare the VM. Triggers: provision the VM, prepare the VM, install the dev stack, VM is missing tools, remote VM…

Its SKILL.md is about 1.8k tokens, which your agent loads only when the skill is triggered. The skill folder holds 1 other file (for example `provision.sh`). Compatibility notes: DevChain remote VMs (Ubuntu or Debian) claimed by a home DevChain

It sits in DevOps & Cloud. It works with PHP. The repository describes itself as: Run a team of AI coding agents. On your machine. Local-first orchestration for Claude Code, Codex, OpenCode, Antigravity, and Copilot. The licence is MIT.

When your agent uses it

  • Asks to provision

Example prompts

  • “/vm-provisioning”

Requirements

  • Python 3
  • Node.js
  • A Bash shell
  • Docker
  • Compatibility (from SKILL.md): DevChain remote VMs (Ubuntu or Debian) claimed by a home DevChain

Workflow steps

7 steps, taken from the step headings in SKILL.md.

  1. Find the script
  2. Check
  3. Find the requirements
  4. Install what is missing
  5. Mark
  6. Report
  7. Install Docker (only when it is missing)

What it can do on your machine

Read from SKILL.md and the folder at commit 172b47c. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships script files (Shell), which the agent can run.

    Shell commands in SKILL.md call:

    • nvm
    • docker
    • curl
    • apt-get
    • npm
    • apt
    • bash
    • php
    • pnpm
    • pip

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use docker, curl, npm, pnpm and pip, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

  • Compatibility

    DevChain remote VMs (Ubuntu or Debian) claimed by a home DevChain

    From compatibility in the SKILL.md frontmatter.

Context cost

Vm Provisioning loads about 1.8k tokens when it runs. Until then it costs about 136 tokens; SKILL.md has 944 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~136
When it runs · the whole SKILL.md, loaded when a task matches
~1.8k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteRuns commands with sudoSKILL.md:55
    r, build tools, database clients) | Run `sudo apt-get update` once. Then run `sudo apt-get install -y <packages>`. |

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from TwiTech-LAB/devchain at commit 172b47c, republished under its MIT licence (© TwiTech-LAB). 944 words, ~1,772 tokens.

Download SKILL.mdSave it as .claude/skills/vm-provisioning/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
vm-provisioning
description
Prepare a DevChain remote VM for development of a project. Find the tools the project needs from its CI, version files, manifests and docs, install the missing ones, and mark the project as provisioned on this VM. Runs only on a claimed DevChain VM. Use at agent start when `devchain status` prints `remote VM`, when a command on the VM fails because a tool is missing, or when the user asks to provision or prepare the VM. Triggers: provision the VM, prepare the VM, install the dev stack, VM is missing tools, remote VM setup.
compatibility
DevChain remote VMs (Ubuntu or Debian) claimed by a home DevChain
displayName
VM Provisioning
version
0.1.0
license
MIT
resources
provision.sh

VM Provisioning

A DevChain remote VM starts as a generic machine. Only the project folder comes from home. This skill installs the development stack that the project needs on the VM. Then it marks the project as provisioned on this VM.

Step 0 — Find the script

  1. Call devchain_get_skill with slug vm-provisioning. Note the returned contentPath.
  2. The script is <contentPath>/provision.sh. Run it with bash.

Below, $P means bash <contentPath>/provision.sh.

Step 1 — Check

Run $P check.

OutputAction
homeStop. Home needs no provisioning.
provisionedStop. Continue your task.
not provisionedGo to Step 2.

If a command later fails because a tool is missing, do Steps 2 to 6 for that tool, even when the check prints provisioned.

Step 2 — Find the requirements

Read these sources in this order. When two sources conflict, the earlier source wins.

  1. CI workflows (.github/workflows/*.yml, .gitlab-ci.yml). They show the exact tools and versions that build the project.
  2. Version files: .nvmrc, .node-version, .tool-versions, .python-version, .ruby-version.
  3. Manifests: package.json (engines, packageManager), composer.json (require.php, ext-*), pyproject.toml, requirements*.txt, go.mod, Gemfile, Cargo.toml, pom.xml, build.gradle.
  4. Dockerfile and Compose files. Base images show the runtimes. Services show the databases, caches and queues.
  5. Setup docs: README, CONTRIBUTING, docs/AGENTS.md, and the setup or development pages in docs/.

Write a list. For each tool, give the tool, the required version and the source (file:line).

Step 3 — Install what is missing

Check each tool first (for example php -v). Install only the tools that are missing or have the wrong version.

Run devchain status once. Its second line says whether sudo works without a password. If the line does not start with sudo: yes, ask the user before you run any sudo command.

NeedMethod
OS packages (PHP, web server, build tools, database clients)Run sudo apt-get update once. Then run sudo apt-get install -y <packages>.
A version that the distribution does not haveAsk the user before you add a third-party package repository (for example the ondrej/php PPA).
Node.jsUse DevChain's Node (/usr/local/bin/node) when it meets the requirement. If not, install nvm in the user's home, run nvm install <version>, then run nvm alias default system. Run project commands with nvm exec <version> <command>.
pnpm or YarnUse corepack with the version in packageManager, or npm install -g <tool>@<version>.
PythonUse the system python3 and a project .venv. For another version, use uv or pyenv in the user's home.
Databases, caches, queuesIf the project has a Compose file, use it (docker compose up -d <service>). If not, install the OS package and bind the service to 127.0.0.1.
DockerDevChain installs Docker when it sets up the VM. If docker version or docker compose version fails without sudo, install Docker as Step 6. Never install it with apt or a script.

Do not install project dependencies (npm ci, pnpm install, pip install) as part of provisioning. File sync does not copy node_modules, .venv, dist, build or target between home and the VM. The agent whose task needs them installs them. vendor/ (Composer) syncs with home, so home's copy arrives on the VM.

Show full SKILL.md (442 more words)Show less

Never do these

DevChain runs on this VM. Each action below can break DevChain, its agents or the file sync.

  • Do not replace, upgrade or remove /usr/local/bin/node, npm, or anything under /opt/devchain-host. DevChain and the Codex and Copilot CLIs run on this Node.
  • Do not set a global default Node (for example nvm alias default 18). New agent shells then start the provider CLIs on the wrong Node.
  • Do not install, upgrade or remove the provider CLIs: claude, codex, copilot, opencode, agy. DevChain pins their versions.
  • Do not install Docker yourself. Do not change users or groups (usermod, groupadd). Use Step 6: DevChain installs Docker, adds the user to the docker group and restarts itself safely.
  • Do not stop, restart or change devchain-host, devchain-bootstrap or Syncthing. Do not use port 3000 or 22000. Run ss -ltn before you pick a port for a service.
  • Do not turn on or change a firewall (ufw, iptables). Do not change the SSH settings.
  • Do not run apt upgrade, apt full-upgrade or do-release-upgrade. Do not reboot.
  • Do not replace /usr/bin/python3. The OS tools use it.
  • Do not change project files for provisioning. The project folder syncs with home.
  • Do not create, copy or print secrets. If the project needs credentials, tell the user.

Step 4 — Mark

Run $P set.

The marker is the file ~/.devchain/provisioning/<DEVCHAIN_PROJECT_ID> on the VM. It is outside the project folder, because the project folder syncs with home. It holds the claimedAt value of /etc/devchain-host/claim.json. A reset or a reinstall claims the VM again and writes a new value, so $P check then prints not provisioned. An update keeps the value.

Step 5 — Report

Tell the user in short lines:

  • what you installed, with versions;
  • what was already present;
  • what the user must do (for example a third-party repository or credentials).

If Docker is missing, also tell the user: "DevChain now installs Docker and restarts. All agent sessions on this VM stop. Start them again when the install is done."

Step 6 — Install Docker (only when it is missing)

Warning: DevChain restarts at the end of the install. Your session and every other agent session on this VM stop. Do this step last.

  1. Complete Steps 4 and 5 first.

  2. Start the install:

    bash
    curl -sS -X POST "$DEVCHAIN_API_URL/api/host/docker" -H 'Content-Type: application/json' -d '{}'
  3. A 202 reply with "state":"pending" means that the install started. Do nothing more. DevChain restarts when the install is done.

  4. A 404 reply or the code HOST_HELPER_OUTDATED means that this VM runs an older DevChain. Tell the user to run Update VM in Cloud, then press Install Docker there.

To read the progress, run curl -sS "$DEVCHAIN_API_URL/api/host/docker".

© TwiTech-LAB, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file in apps/local-app/skills/vm-provisioning of TwiTech-LAB/devchain.

  • SKILL.md
  • provision.sh

Open the folder on GitHubat commit 172b47c

Compare with similar skills

Vm Provisioning next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Vm Provisioning compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Vm Provisioning this skillTwiTech-LAB/devchain101—~1.8kAutomated safety check: NotesMIT
Container Devyansongda/pay5.4k—~968Automated safety check: PassMIT
Compile Php WasmWordPress/wordpress-playground2k—~2.8kAutomated safety check: PassGPL-2.0
Ddevhaxtheweb/haxcms-php130—~1.6kAutomated safety check: PassApache-2.0
Shopware CLI Dockershopware/shopware-cli123—~1.8kAutomated safety check: PassMIT
Deploy To Hostinghostinger/api-mcp-server159—~2.7kAutomated safety check: NotesMIT

Similar skills

  • Container Dev

    yansongda/pay

    A skill your agent uses when local PHP environment is unavailable.

    5.4k GitHub stars~968 tokensUpdated 10 days ago
    DevOps & CloudAuto-check passed
  • Compile Php Wasm

    WordPress/wordpress-playground

    Compile PHP.wasm main modules and side modules (dynamic extensions) for Node.js and web platforms.

    2k GitHub stars~2.8k tokensUpdated yesterday
    DevOps & CloudAuto-check passed
  • Ddev

    haxtheweb/haxcms-php

    DDEV local development environment guidance for Docker-based PHP/Node projects.

    130 GitHub stars~1.6k tokensUpdated yesterday
    DevOps & CloudAuto-check passed
  • Shopware CLI Docker

    shopware/shopware-cli

    A skill your agent uses when working on Docker-backed Shopware projects and needing to run Shopware or Symfony CLI commands, interact with project services or databases, start or stop the…

    123 GitHub stars~1.8k tokensUpdated yesterday
    DevOps & CloudAuto-check passed
  • Deploy To Hosting

    hostinger/api-mcp-server

    Deploy an existing project to a website on Hostinger web hosting (Shared, Cloud or Agency plans) and keep it deployed: picks the right deploy for static sites, Node.js apps (Next.js, Nuxt, Express…

    159 GitHub stars~2.7k tokensUpdated yesterday
    DevOps & CloudAuto-check: notes
  • Basercms Unittest

    baserproject/basercms

    baserCMS(CakePHP5 / PHPUnit)のユニットテストをローカル Docker 環境で実行・調査する手順。「ユニットテストを実行して」「全テストを走らせて」「このテストだけ流して」「テスト失敗を調べて」「プラグイン単体でテストを動かしたい」「プラグインにテスト環境を導入したい」等のときに参照する。コンテナ名・実行コマンド・権限自動承認のためのコマンド整形・失敗の集計と切り分け方…

    190 GitHub stars~4.9k tokensUpdated 3 days ago
    DevOps & CloudAuto-check passed

More from TwiTech-LAB/devchain

  • Asd Ste100 Skill

    TwiTech-LAB/devchain

    Write or rewrite English with ASD-STE100 Simplified Technical English rules: one meaning per word, active voice, simple tenses, one instruction per sentence.

    101 GitHub stars~1.2k tokensUpdated yesterday
    Auto-check passed
  • Code Simplifier

    TwiTech-LAB/devchain

    Review a change set for reuse, simplification, efficiency, and altitude problems, then apply the fixes while preserving exact behavior.

    101 GitHub stars~2k tokensUpdated yesterday
    Auto-check passed
  • Create Commit

    TwiTech-LAB/devchain

    Create a git commit whose message records why the change exists, not just what changed.

    101 GitHub stars~1.2k tokensUpdated yesterday
    Auto-check passed
  • Improve Codebase Architecture

    TwiTech-LAB/devchain

    Plan architecture improvements and refactoring for a codebase: scan for deepening opportunities (shallow modules, leaky seams, low-leverage interfaces), present candidates as a markdown report with…

    101 GitHub stars~3k tokensUpdated yesterday
    Auto-check passed
  • Project Skill Review

    TwiTech-LAB/devchain

    Review the skills stored for a project. An agent skill from TwiTech-LAB/devchain.

    101 GitHub stars~2k tokensUpdated yesterday
    Auto-check passed

Works with

Categories

Questions about Vm Provisioning

What does Vm Provisioning do?

Prepare a DevChain remote VM for development of a project. An agent skill from TwiTech-LAB/devchain. Vm Provisioning is an agent skill from TwiTech-LAB/devchain. Prepare a DevChain remote VM for development of a project.

When should I use Vm Provisioning?

Vm Provisioning fits situations like: asks to provision.

How do I install Vm Provisioning in Claude Code?

Run `npx skills add TwiTech-LAB/devchain --skill vm-provisioning -a claude-code`. Or copy the skill folder (apps/local-app/skills/vm-provisioning in TwiTech-LAB/devchain) into .claude/skills/vm-provisioning in your project. Claude Code loads it when a task matches its description.

How do I install Vm Provisioning in Codex?

Run `npx skills add TwiTech-LAB/devchain --skill vm-provisioning -a codex`. Or copy the skill folder (apps/local-app/skills/vm-provisioning in TwiTech-LAB/devchain) into .agents/skills/vm-provisioning in your project. Codex loads it when a task matches its description.

Can I use Vm Provisioning in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add TwiTech-LAB/devchain --skill vm-provisioning -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/vm-provisioning, .gemini/skills/vm-provisioning, .github/skills/vm-provisioning and .opencode/skills/vm-provisioning in your project.

What does Vm Provisioning need to run?

Going by SKILL.md and its folder, Vm Provisioning needs a shell for the scripts in its folder and the command-line tools its instructions call (nvm, docker, curl, apt-get, npm and apt). Our summary lists: Python 3; Node.js; A Bash shell; Docker. Compatibility (from SKILL.md): DevChain remote VMs (Ubuntu or Debian) claimed by a home DevChain.

Does Vm Provisioning access the network?

SKILL.md contains no URLs. Its commands use docker, curl, npm and pip, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Vm Provisioning safe to install?

Our automated static check of SKILL.md found notes only (runs commands with sudo), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Vm Provisioning use?

Vm Provisioning is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Vm Provisioning use?

About 1.8k tokens (SKILL.md is roughly 7.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Vm Provisioning?

Skills that share tags, products or a category with Vm Provisioning: Container Dev (yansongda/pay, 5.4k stars), Compile Php Wasm (WordPress/wordpress-playground, 2k stars), Ddev (haxtheweb/haxcms-php, 130 stars) and Shopware CLI Docker (shopware/shopware-cli, 123 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Vm Provisioning?

TwiTech-LAB (a GitHub organization) maintains it in TwiTech-LAB/devchain, which has 101 GitHub stars. The repository holds 6 skills in this directory. The repository was last updated on October 7, 2026.

Source: TwiTech-LAB/devchain on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.