AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Attach Project

skill-vladislavsournine-vladyslav-skills-attach-project · by VladislavSournine

Use when adding Claude Code structure to an existing project. Auto-detects stack, creates only missing files.

No reviews yet
0 installs
22 views
0.0% view→install

Install

$ agentstack add skill-vladislavsournine-vladyslav-skills-attach-project

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-vladislavsournine-vladyslav-skills-attach-project)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
2mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Attach Project? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Attach Project

Type: Engineer (light)

Overview

Add Claude Code structure to an existing project. Never overwrites existing files. Auto-detects stacks via scripts/detect-stack.sh. The bash scaffolder (scripts/attach-project.sh) does all the work in ~0.5 seconds.

This was a Heavy Engineer skill until v3.1.0. Like init-project v3.0.0, the dispatched Sonnet subagent was doing pure mechanics (mkdir, cp, sed) — no LLM thinking needed for any of it.

Process

Step 0: Pre-flight (Opus main)

Collect inputs that the scaffolder can't auto-detect.

  1. Verify project root. Run ls -A. The scaffolder will reject the run if no project markers exist, so this is a pre-emptive sanity check. If pwd looks empty (no .git/, no language manifest like package.json / requirements.txt / etc.) → STOP and suggest /vladyslav:init-project for a new project.
  1. Run stack detection for the user's information:

``bash /scripts/detect-stack.sh . ``

Parse the JSON to show the user what was detected. Example: "Detected: python, docker". This is informational — the scaffolder runs detection again internally.

  1. AskUserQuestion — additional stacks not auto-detected (multi-select):

> "Detected stacks: `. Want to add any stacks not detected?" > Options: python, go, flutter, swift, kotlin, other, none`.

  1. For each "other" stack — AskUserQuestion three times:
  • label (e.g. "Rust backend")
  • dir (e.g. rust)
  • gitignore entries (comma-separated, e.g. target/,Cargo.lock)
  1. AskUserQuestion — domain (free text, optional):

> "Project domain / purpose? (e.g. 'iOS fitness app', 'Python data pipeline') — type none to skip"

  1. AskUserQuestion — private mode (single-select):

> "Private mode? Gitignore AI workflow files (CLAUDE.md, .claude/, docs/plans/)?" > Options: yes, no.

  1. Resolve plugin root. Same approach as init-project: Glob ~/.claude/plugins/cache/vladyslav-marketplace/vladyslav/*/scripts/attach-project.sh and take the directory two levels up. Fall back to /Volumes/DevSSD/Development/vladyslav-skills (dev clone).

Step 1: Run the scaffolder

Execute (via the Bash tool):

/scripts/attach-project.sh \
    --pwd  \
    --plugin-root  \
    [--additional-stacks "python,go,..."] \
    [--other-stacks "label1:dir1:gitignore-entries1;label2:dir2:gitignore-entries2"] \
    --domain "" \
    --private-mode 

--other-stacks format: semicolon-separated list of label:dir:gitignore triples. The gitignore part is itself a comma-separated list. Pass empty string "" if no "other" stacks were chosen.

The script emits JSON:

{
  "status": "success" | "error",
  "detected_stacks": [],
  "files_written": [],
  "files_skipped": [],
  "warnings": [],
  "error": ""
}

Capture this output.

Step 2: Present summary

Parse the JSON. Render to the user:

status: success:

✓ attach-project complete
  Detected: 
  Files written:  — 
  Files preserved (already existed):  — 
  Warnings: 
  Next: /vladyslav:ingest  — scan codebase, populate docs/, and seed MemPalace

status: error:

✗ attach-project failed
  Error: 

What the scaffolder does (auditing reference)

The bash scaffolder, given the parameters above, writes ONLY these paths if they do not already exist:

  • CLAUDE.md — with auto-generated Stack section based on detected + additional stacks
  • .gitignore — APPENDED with stack-specific entries (Python / Go / Flutter / Swift / Kotlin / Node / Web), editors/OS, secrets/env, logs, and (if private mode) AI workflow file lines. Existing entries are preserved verbatim, duplicates are skipped via grep -Fxq.
  • .claude/settings.json — with PROJECT_DOCS_ROOT env
  • .claude/agents/docs-agent.md — documentation maintainer
  • .claude/agents/code-review-agent.md — code-review agent
  • docs/architecture/system.md, docs/product/prd.md, docs/plans/tasks.md — stub files (# Title\n\n*to be filled*\n)
  • Per detected/added stack: a placeholder directory (python/, go/, swift/, flutter/, kotlin/) with .gitkeep — but ONLY if no matching directory (or sibling like backend/, app/, ios/, android/) already exists.
  • Per "other" stack: the user-specified / with .gitkeep.

Idempotent: rerun is safe. Every pre-existing file is reported in files_skipped. No file is ever overwritten.

No git init: the project already has version control. The scaffolder doesn't touch git.

No backend scaffolding: unlike init-project, this skill does NOT create requirements.txt, FastAPI main.py, Dockerfile, docker-compose files, etc. Those would conflict with the existing project. attach-project adds only the AI workflow shell.

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.