Skip to main content

VS Code-native AI engineering workflow system for microservices, libraries, and backend systems.

Project description

vstack

PyPI version Python version Verify status Security checks Runtime: stdlib only License: MIT GitHub Discussions

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

Building blocks

Artifact type Purpose Typical invocation
Agents Main operating interface for role-based work @product, @tester
Skills Reusable task procedures /verify, /security
Instructions Baseline policy and repository guardrails auto-loaded by context
Prompts Reusable prompt artifacts where direct prompting is useful explicit prompt use

Prompt catalog

Prompts are .prompt.md files installed to .github/prompts/. Invoke them via the VS Code command palette (Chat: Run Prompt File) or the Copilot Chat attach button.

Prompt Purpose
api-design-review Review an API design or OpenAPI spec for correctness
architecture-risk Identify architectural risks and mitigation priorities
code-review Review a change for bugs, regressions, and missing tests
dependency-audit Audit dependencies for vulnerabilities and licence risks
incident-timeline Build an evidence-based incident timeline and post-mortem
migration-safety Review DB migration safety, rollback, and zero-downtime
release-readiness Evaluate release readiness from reports and open blockers

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 validate reports 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 pipx binary path is in PATH
  • Validation error: rerun vstack install --target ... and then vstack 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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vstack-2.2.0.tar.gz (168.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vstack-2.2.0-py3-none-any.whl (254.5 kB view details)

Uploaded Python 3

File details

Details for the file vstack-2.2.0.tar.gz.

File metadata

  • Download URL: vstack-2.2.0.tar.gz
  • Upload date:
  • Size: 168.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for vstack-2.2.0.tar.gz
Algorithm Hash digest
SHA256 f831fc64cd2d9ad1dd4903cd5913cb4c322eeff784b0f2b3b75af09486dd93e5
MD5 0165143c1905ea022b578549385a285a
BLAKE2b-256 90c6e9f610accf77776df7a1457c6fb60d619a9ce6748afe32baea7c9f38b533

See more details on using hashes here.

Provenance

The following attestation bundles were made for vstack-2.2.0.tar.gz:

Publisher: publish.yml on eschaar/vstack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vstack-2.2.0-py3-none-any.whl.

File metadata

  • Download URL: vstack-2.2.0-py3-none-any.whl
  • Upload date:
  • Size: 254.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for vstack-2.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6d6cee9d02e9b9e9b02ef003ed06032ff977e8e5bfb43886e51773fdb7d5308a
MD5 21497fbbf8668eb2e83503c22464d53d
BLAKE2b-256 4cbda0ca5b303a2f22c4a8d977e15490dafd6ca5f29d576b2662509cfb8f36d5

See more details on using hashes here.

Provenance

The following attestation bundles were made for vstack-2.2.0-py3-none-any.whl:

Publisher: publish.yml on eschaar/vstack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page