VS Code-native AI engineering workflow system for microservices, libraries, and backend systems.
Project description
The VS Code-native AI workflow system for backend engineering.
vstack installs structured agents, skills, instructions, and prompts into .github/ so GitHub Copilot Agent Mode can run repeatable backend workflows with clear role boundaries.
It provides a fixed role model for end-to-end software delivery: product, architect, designer, engineer, tester, and release.
Best for
- Backend and API teams using GitHub Copilot Agent Mode in VS Code
- Repositories that want consistent planning, implementation, verification, and release flow
- Teams that want reusable AI workflows instead of one-off prompt crafting
What you get
- Fixed role model:
product,architect,designer,engineer,tester,release - Template-driven install model from
src/vstack/_templates/ - Backend-first verification, security, and release discipline
- Standard-library-only runtime dependencies
Quick start
Install with pipx, then install vstack artifacts into your repository:
pipx install vstack
vstack install --target /path/to/your/project
vstack validate
Run a first task in Copilot Agent Mode:
@tester /verify Check this repository and summarize findings
Expected result:
vstack validatereports no unresolved template tokens- Agent command returns a concrete verification summary for your repository
Why this helps
- Consistent role boundaries for planning, implementation, validation, and release
- Reusable skills and instructions instead of ad hoc prompts
- Better release hygiene with documented workflows and CI alignment
Core commands
vstack --version
vstack validate
vstack install --target /path/to/your/project
vstack manifest verify --target /path/to/your/project
vstack manifest status --target /path/to/your/project
vstack manifest upgrade --target /path/to/your/project
Common usage patterns
Repository-scoped install (recommended for teams):
vstack install --target /path/to/your/project
Profile-wide install (optional defaults for all projects):
vstack install --global
By default, vstack install preserves existing unmanaged files and local edits to tracked files by comparing the current file contents with the SHA-256 checksum recorded in vstack.json. Use --adopt-name <name> to start tracking one existing unmanaged file without overwriting it. vstack uninstall also preserves locally modified tracked files unless you explicitly pass --force or --force-name <name>. Use vstack manifest status --target ... (or vstack status --target ...) to see what still matches the manifest. If a legacy manifest schema is detected, run vstack manifest upgrade --target ... first.
If you already have agents, skills, or other files in .github/, run a dry-run first to see what would be preserved before committing:
vstack install --dry-run --target /path/to/your/project
The summary lists preserved files as type/name selectors (e.g. agent/engineer). Resolve each conflict with --force-name type/name to overwrite, --adopt-name type/name to take ownership without overwriting, or --force to overwrite everything.
Fast troubleshooting
- Command not found after install: ensure your
pipxbinary path is inPATH - Validation error: rerun
vstack install --target ...and thenvstack validate - Agent results look generic: explicitly invoke a role (for example
@tester) before a skill
Full documentation
For complete documentation (including architecture details, workflow diagrams, and contributor guides), use GitHub:
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file vstack-2.1.0.tar.gz.
File metadata
- Download URL: vstack-2.1.0.tar.gz
- Upload date:
- Size: 117.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f62e26ad188b7044be42b91fb9db9892b1154ea2cd0c6d86e19a4022dbeb9921
|
|
| MD5 |
f6f400008acc28711ef1193802e7cad8
|
|
| BLAKE2b-256 |
bb9057311e07ca79929807abaaafe55f09be57bacf2a071fc887380a4c39e634
|
Provenance
The following attestation bundles were made for vstack-2.1.0.tar.gz:
Publisher:
publish.yml on eschaar/vstack
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vstack-2.1.0.tar.gz -
Subject digest:
f62e26ad188b7044be42b91fb9db9892b1154ea2cd0c6d86e19a4022dbeb9921 - Sigstore transparency entry: 1429098856
- Sigstore integration time:
-
Permalink:
eschaar/vstack@86613e72cb59f9f80c51e4c2ff09b4ae366f46ba -
Branch / Tag:
refs/tags/2.1.0 - Owner: https://github.com/eschaar
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@86613e72cb59f9f80c51e4c2ff09b4ae366f46ba -
Trigger Event:
release
-
Statement type:
File details
Details for the file vstack-2.1.0-py3-none-any.whl.
File metadata
- Download URL: vstack-2.1.0-py3-none-any.whl
- Upload date:
- Size: 174.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
79db4b8fe9de7119def9b35ba23c467e01a7e541d0ab7239b1878b6c58b827f2
|
|
| MD5 |
39bee11d261e0b36160419e0556ee3a9
|
|
| BLAKE2b-256 |
7e78269426af38b11d2ac6fa79323afb94f8591cf41feb38be030196dc5d7dce
|
Provenance
The following attestation bundles were made for vstack-2.1.0-py3-none-any.whl:
Publisher:
publish.yml on eschaar/vstack
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vstack-2.1.0-py3-none-any.whl -
Subject digest:
79db4b8fe9de7119def9b35ba23c467e01a7e541d0ab7239b1878b6c58b827f2 - Sigstore transparency entry: 1429098864
- Sigstore integration time:
-
Permalink:
eschaar/vstack@86613e72cb59f9f80c51e4c2ff09b4ae366f46ba -
Branch / Tag:
refs/tags/2.1.0 - Owner: https://github.com/eschaar
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@86613e72cb59f9f80c51e4c2ff09b4ae366f46ba -
Trigger Event:
release
-
Statement type: