vibesquad 1.1.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- vibesquad-1.1.0/PKG-INFO +95 -0
- vibesquad-1.1.0/README.md +85 -0
- vibesquad-1.1.0/pyproject.toml +27 -0
- vibesquad-1.1.0/setup.cfg +4 -0
- vibesquad-1.1.0/tests/test_core.py +10 -0
- vibesquad-1.1.0/vibesquad/__init__.py +4 -0
- vibesquad-1.1.0/vibesquad/agent_registry.yaml +53 -0
- vibesquad-1.1.0/vibesquad/blueprint.md +46 -0
- vibesquad-1.1.0/vibesquad/commander.py +142 -0
- vibesquad-1.1.0/vibesquad/main.py +91 -0
- vibesquad-1.1.0/vibesquad.egg-info/PKG-INFO +95 -0
- vibesquad-1.1.0/vibesquad.egg-info/SOURCES.txt +14 -0
- vibesquad-1.1.0/vibesquad.egg-info/dependency_links.txt +1 -0
- vibesquad-1.1.0/vibesquad.egg-info/entry_points.txt +3 -0
- vibesquad-1.1.0/vibesquad.egg-info/requires.txt +2 -0
- vibesquad-1.1.0/vibesquad.egg-info/top_level.txt +1 -0
vibesquad-1.1.0/PKG-INFO
ADDED
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: vibesquad
|
|
3
|
+
Version: 1.1.0
|
|
4
|
+
Summary: A supreme orchestrator for AI agents following the VibeSquad Master Blueprint.
|
|
5
|
+
Author: KSC
|
|
6
|
+
License: MIT
|
|
7
|
+
Description-Content-Type: text/markdown
|
|
8
|
+
Requires-Dist: pyyaml
|
|
9
|
+
Requires-Dist: python-dotenv
|
|
10
|
+
|
|
11
|
+
# š VibeSquad (vibesquad)
|
|
12
|
+
|
|
13
|
+
**The Supreme Orchestrator for High-Performance 1-Person Development Loops.**
|
|
14
|
+
|
|
15
|
+
`VibeSquad` is a framework-agnostic orchestrator agent designed to manage multiple AI specialists (Agents) while enforcing strict minimalist standards, security, and modern UI/UX principles.
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## ā” Quick Start (3-Minute Setup)
|
|
20
|
+
|
|
21
|
+
### 1. Installation
|
|
22
|
+
|
|
23
|
+
Install the package directly from your local source:
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
git clone https://github.com/your-username/vibesquad.git
|
|
27
|
+
cd vibesquad
|
|
28
|
+
pip install -e .
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
### 2. Basic Usage (Python)
|
|
32
|
+
|
|
33
|
+
You can integrate VibeSquad into any AI agent system or use it as a standalone prompt generator.
|
|
34
|
+
|
|
35
|
+
```python
|
|
36
|
+
from vibesquad import VibeSquad
|
|
37
|
+
|
|
38
|
+
# Initialize the VibeSquad
|
|
39
|
+
commander = VibeSquad()
|
|
40
|
+
|
|
41
|
+
# 1. Get the Master Blueprint (System Instructions)
|
|
42
|
+
# (Logic: commander.blueprint contains the content)
|
|
43
|
+
print("VibeSquad Master Blueprint Loaded Successfully!")
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
### 3. Command Interface
|
|
47
|
+
|
|
48
|
+
Run the built-in terminal interface to start orchestrating:
|
|
49
|
+
|
|
50
|
+
```bash
|
|
51
|
+
dotcom
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
---
|
|
55
|
+
|
|
56
|
+
## šļø Core Standards (The Master Blueprint)
|
|
57
|
+
|
|
58
|
+
When VibeSquad orchestrates a project, it strictly enforces the following rules defined in the `blueprint.md`:
|
|
59
|
+
|
|
60
|
+
### šØ 1. Modern UI/UX Standards
|
|
61
|
+
|
|
62
|
+
- **Minimalist Design**: Zero clutter, focus on core user intent.
|
|
63
|
+
- **Tailwind-First**: Direct, utility-first styling for speed and consistency.
|
|
64
|
+
- **Performance**: Optimized assets and fast load times.
|
|
65
|
+
|
|
66
|
+
### š”ļø 2. Security & Engineering
|
|
67
|
+
|
|
68
|
+
- **Secure by Design**: Input validation, CSRF protection, and secure API handling as defaults.
|
|
69
|
+
- **PHP Laravel / Modern Stacks**: Leveraging robust frameworks for backend stability.
|
|
70
|
+
- **Scalable Architecture**: Clean code structure that grows with your project.
|
|
71
|
+
|
|
72
|
+
### āļø 3. 1-Person Dev Optimization
|
|
73
|
+
|
|
74
|
+
- **Unified Vision**: Planning, Development, and QA are synchronized under one command.
|
|
75
|
+
- **Auto-Documentation**: Every phase generates standardized reports for future maintenance.
|
|
76
|
+
|
|
77
|
+
---
|
|
78
|
+
|
|
79
|
+
## š Project Structure
|
|
80
|
+
|
|
81
|
+
- `vibesquad/`: Core logic and built-in Master Blueprint.
|
|
82
|
+
- `examples/`: Ready-to-use scripts for various frameworks.
|
|
83
|
+
- `tests/`: Reliability check suite.
|
|
84
|
+
|
|
85
|
+
---
|
|
86
|
+
|
|
87
|
+
## š License
|
|
88
|
+
|
|
89
|
+
Distributed under the **MIT License**. See `LICENSE` for more information.
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
|
|
93
|
+
## š¤ Contributing
|
|
94
|
+
|
|
95
|
+
Authorized by **KSC**. For contributions or bug reports, please open an issue in the repository.
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
# š VibeSquad (vibesquad)
|
|
2
|
+
|
|
3
|
+
**The Supreme Orchestrator for High-Performance 1-Person Development Loops.**
|
|
4
|
+
|
|
5
|
+
`VibeSquad` is a framework-agnostic orchestrator agent designed to manage multiple AI specialists (Agents) while enforcing strict minimalist standards, security, and modern UI/UX principles.
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## ā” Quick Start (3-Minute Setup)
|
|
10
|
+
|
|
11
|
+
### 1. Installation
|
|
12
|
+
|
|
13
|
+
Install the package directly from your local source:
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
git clone https://github.com/your-username/vibesquad.git
|
|
17
|
+
cd vibesquad
|
|
18
|
+
pip install -e .
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
### 2. Basic Usage (Python)
|
|
22
|
+
|
|
23
|
+
You can integrate VibeSquad into any AI agent system or use it as a standalone prompt generator.
|
|
24
|
+
|
|
25
|
+
```python
|
|
26
|
+
from vibesquad import VibeSquad
|
|
27
|
+
|
|
28
|
+
# Initialize the VibeSquad
|
|
29
|
+
commander = VibeSquad()
|
|
30
|
+
|
|
31
|
+
# 1. Get the Master Blueprint (System Instructions)
|
|
32
|
+
# (Logic: commander.blueprint contains the content)
|
|
33
|
+
print("VibeSquad Master Blueprint Loaded Successfully!")
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
### 3. Command Interface
|
|
37
|
+
|
|
38
|
+
Run the built-in terminal interface to start orchestrating:
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
dotcom
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
## šļø Core Standards (The Master Blueprint)
|
|
47
|
+
|
|
48
|
+
When VibeSquad orchestrates a project, it strictly enforces the following rules defined in the `blueprint.md`:
|
|
49
|
+
|
|
50
|
+
### šØ 1. Modern UI/UX Standards
|
|
51
|
+
|
|
52
|
+
- **Minimalist Design**: Zero clutter, focus on core user intent.
|
|
53
|
+
- **Tailwind-First**: Direct, utility-first styling for speed and consistency.
|
|
54
|
+
- **Performance**: Optimized assets and fast load times.
|
|
55
|
+
|
|
56
|
+
### š”ļø 2. Security & Engineering
|
|
57
|
+
|
|
58
|
+
- **Secure by Design**: Input validation, CSRF protection, and secure API handling as defaults.
|
|
59
|
+
- **PHP Laravel / Modern Stacks**: Leveraging robust frameworks for backend stability.
|
|
60
|
+
- **Scalable Architecture**: Clean code structure that grows with your project.
|
|
61
|
+
|
|
62
|
+
### āļø 3. 1-Person Dev Optimization
|
|
63
|
+
|
|
64
|
+
- **Unified Vision**: Planning, Development, and QA are synchronized under one command.
|
|
65
|
+
- **Auto-Documentation**: Every phase generates standardized reports for future maintenance.
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
## š Project Structure
|
|
70
|
+
|
|
71
|
+
- `vibesquad/`: Core logic and built-in Master Blueprint.
|
|
72
|
+
- `examples/`: Ready-to-use scripts for various frameworks.
|
|
73
|
+
- `tests/`: Reliability check suite.
|
|
74
|
+
|
|
75
|
+
---
|
|
76
|
+
|
|
77
|
+
## š License
|
|
78
|
+
|
|
79
|
+
Distributed under the **MIT License**. See `LICENSE` for more information.
|
|
80
|
+
|
|
81
|
+
---
|
|
82
|
+
|
|
83
|
+
## š¤ Contributing
|
|
84
|
+
|
|
85
|
+
Authorized by **KSC**. For contributions or bug reports, please open an issue in the repository.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
[build-system]
|
|
2
|
+
requires = ["setuptools>=61.0"]
|
|
3
|
+
build-backend = "setuptools.build_meta"
|
|
4
|
+
|
|
5
|
+
[project]
|
|
6
|
+
name = "vibesquad"
|
|
7
|
+
version = "1.1.0"
|
|
8
|
+
readme = "README.md"
|
|
9
|
+
description = "A supreme orchestrator for AI agents following the VibeSquad Master Blueprint."
|
|
10
|
+
authors = [{ name = "KSC" }]
|
|
11
|
+
license = { text = "MIT" }
|
|
12
|
+
dependencies = [
|
|
13
|
+
"pyyaml",
|
|
14
|
+
"python-dotenv",
|
|
15
|
+
]
|
|
16
|
+
|
|
17
|
+
[tool.setuptools.packages.find]
|
|
18
|
+
where = ["."]
|
|
19
|
+
include = ["vibesquad*"]
|
|
20
|
+
exclude = ["venv*", "tests*", "examples*"]
|
|
21
|
+
|
|
22
|
+
[project.scripts]
|
|
23
|
+
vis = "vibesquad.main:main"
|
|
24
|
+
vibesquad = "vibesquad.main:main"
|
|
25
|
+
|
|
26
|
+
[tool.setuptools.package-data]
|
|
27
|
+
vibesquad = ["*.yaml", "*.md"]
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# tests/test_core.py
|
|
2
|
+
from dotcom_commander import DotComCommander
|
|
3
|
+
|
|
4
|
+
def test_blueprint_loading():
|
|
5
|
+
commander = DotComCommander()
|
|
6
|
+
assert "Master Blueprint" in commander.get_instructions()
|
|
7
|
+
|
|
8
|
+
def test_version():
|
|
9
|
+
import dotcom_commander
|
|
10
|
+
assert dotcom_commander.__version__ == "1.0.0"
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# VibeSquad - Specialist Agent Registry (v1.1.0 Free Tier Enabled)
|
|
2
|
+
# Defines available task forces for the AgentsOrchestrator pipeline
|
|
3
|
+
|
|
4
|
+
agents:
|
|
5
|
+
# --- Standard/Premium Agents ---
|
|
6
|
+
- id: "pm_senior"
|
|
7
|
+
role: "Project Manager Senior"
|
|
8
|
+
tier: "premium"
|
|
9
|
+
specialty: ["Requirement Analysis", "Tasklist Generation", "Scope Management"]
|
|
10
|
+
source: "project-manager-senior"
|
|
11
|
+
|
|
12
|
+
- id: "architect"
|
|
13
|
+
role: "System Architect"
|
|
14
|
+
tier: "premium"
|
|
15
|
+
specialty: ["Scalable Structure", "Laravel", "Security Planning"]
|
|
16
|
+
source: "system-architect"
|
|
17
|
+
|
|
18
|
+
- id: "arch_ux"
|
|
19
|
+
role: "ArchitectUX"
|
|
20
|
+
tier: "premium"
|
|
21
|
+
specialty: ["Technical Foundations", "UX Architecture", "System Design"]
|
|
22
|
+
source: "ArchitectUX"
|
|
23
|
+
|
|
24
|
+
- id: "qa_evidence"
|
|
25
|
+
role: "EvidenceQA"
|
|
26
|
+
tier: "premium"
|
|
27
|
+
specialty: ["Visual Validation", "Screenshot Proof", "Bug Tracking"]
|
|
28
|
+
source: "EvidenceQA"
|
|
29
|
+
|
|
30
|
+
# --- Free Tier / Open Agents (v1.1.0) ---
|
|
31
|
+
- id: "open_pm"
|
|
32
|
+
role: "Community Project Manager"
|
|
33
|
+
tier: "free"
|
|
34
|
+
specialty: ["Basic Task Management", "Standard Onboarding"]
|
|
35
|
+
source: "local-pm-logic"
|
|
36
|
+
|
|
37
|
+
- id: "open_architect"
|
|
38
|
+
role: "Community Architect"
|
|
39
|
+
tier: "free"
|
|
40
|
+
specialty: ["Standard MVC Structure", "Basic Security"]
|
|
41
|
+
source: "local-arch-logic"
|
|
42
|
+
|
|
43
|
+
- id: "open_dev"
|
|
44
|
+
role: "Community Developer"
|
|
45
|
+
tier: "free"
|
|
46
|
+
specialty: ["React Implementation", "Tailwind Styling"]
|
|
47
|
+
source: "local-dev-logic"
|
|
48
|
+
|
|
49
|
+
- id: "reality_checker"
|
|
50
|
+
role: "Testing Reality Checker"
|
|
51
|
+
tier: "all"
|
|
52
|
+
specialty: ["Final Certification", "Production Readiness Audit"]
|
|
53
|
+
source: "testing-reality-checker"
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# š Master Blueprint: The VibeSquad Core Standard
|
|
2
|
+
|
|
3
|
+
This document defines the **Global Standard** and **Supreme Constitution** for all projects managed by the `VibeSquad`. All agents must strictly adhere to these rules. The VibeSquad will immediately reject any output that violates these standards.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## šļø 1. Architecture & Tech Stack
|
|
8
|
+
|
|
9
|
+
- **Primary Backend:** PHP (Laravel) or Node.js (TypeScript). Chosen by the Commander based on project scope.
|
|
10
|
+
- **Frontend:** React with Tailwind CSS (Mandatory).
|
|
11
|
+
- **Design System:** Modern, Clean, and Professional UI. Focus on high-quality typography and whitespace.
|
|
12
|
+
- **Database:** PostgreSQL (Relational) as default, Redis for caching.
|
|
13
|
+
- **Infrastructure:** Docker-based containerization with GitHub Actions for CI/CD.
|
|
14
|
+
|
|
15
|
+
## š”ļø 2. Security Protocol (Critical)
|
|
16
|
+
|
|
17
|
+
- **Zero Trust Policy:** All user inputs must be strictly filtered and validated.
|
|
18
|
+
- **Auth/Authz:** JWT-based authentication with mandatory per-logic permission checks.
|
|
19
|
+
- **Data Protection:** Passwords must be hashed using Argon2id. Sensitive data must reside in `.env` files.
|
|
20
|
+
- **Evidence-Based QA:** Every security patch must be proven with visual evidence (screenshots) or detailed test logs.
|
|
21
|
+
|
|
22
|
+
## š 3. Coding Standards & Documentation
|
|
23
|
+
|
|
24
|
+
- **Primary Language:** All code comments, technical docs, and user-facing reports must be in **English**.
|
|
25
|
+
- **Modularity:** Functions must follow the Single Responsibility Principle. Components must be reusable and atomic.
|
|
26
|
+
- **Git Strategy:** Direct pushes to `main` are prohibited. Feature-branch workflow is mandatory. Merge only after passing QA.
|
|
27
|
+
|
|
28
|
+
## š¤ 4. Orchestration Protocol (Agent Handoff)
|
|
29
|
+
|
|
30
|
+
- **Handoff Rule:** Every phase (Plan ā Arch ā Dev) must generate a `handsoff.md` to preserve context.
|
|
31
|
+
- **Task Management:** The `project-manager-senior` must finalize `tasklist.md` and receive Commander/KSC approval before execution.
|
|
32
|
+
- **QA Loop Integrity:** Developers must request validation from `EvidenceQA`. A maximum of 3 retries is allowed before escalation.
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## šØ 5. Philosophy & UI/UX Vision
|
|
37
|
+
|
|
38
|
+
- **Aesthetic:** Minimalist and Modern. Prioritize clarity and ease of use over decorative elements.
|
|
39
|
+
- **Performance:** High-performance rendering. Avoid heavy or excessive animations that hinder UX.
|
|
40
|
+
- **Scalability:** Design for future growth, prioritizing code readability for sustainable maintenance.
|
|
41
|
+
- **Core Value:** "Rapid MVP development with rock-solid security from Day 1."
|
|
42
|
+
|
|
43
|
+
---
|
|
44
|
+
|
|
45
|
+
**Last Updated:** 2026-03-27
|
|
46
|
+
**Authority:** VibeSquad (authorized by KSC)
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import os
|
|
2
|
+
import yaml
|
|
3
|
+
|
|
4
|
+
class VibeSquad:
|
|
5
|
+
def __init__(self, custom_blueprint=None):
|
|
6
|
+
self.base_dir = os.path.dirname(os.path.abspath(__file__)) # Strengthen with absolute path [cite: 2026-03-22]
|
|
7
|
+
|
|
8
|
+
# [Debugging Output] Verify the actual path seen by Python
|
|
9
|
+
print(f"\nš [Debug] Searching in: {self.base_dir}")
|
|
10
|
+
print(f"š [Debug] Files found there: {os.listdir(self.base_dir)}")
|
|
11
|
+
|
|
12
|
+
self.registry = self._load_registry()
|
|
13
|
+
self.blueprint = self._load_blueprint()
|
|
14
|
+
|
|
15
|
+
def get_ai_config(self):
|
|
16
|
+
"""
|
|
17
|
+
Retrieves AI provider configurations from environment variables.
|
|
18
|
+
"""
|
|
19
|
+
return {
|
|
20
|
+
"openai": os.getenv("OPENAI_API_KEY"),
|
|
21
|
+
"anthropic": os.getenv("ANTHROPIC_API_KEY"),
|
|
22
|
+
"google": os.getenv("GOOGLE_API_KEY"),
|
|
23
|
+
"local": {
|
|
24
|
+
"base_url": os.getenv("LOCAL_AI_BASE_URL", "http://localhost:11434"),
|
|
25
|
+
"api_key": os.getenv("LOCAL_AI_API_KEY")
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
def _load_registry(self):
|
|
30
|
+
# Path to agent_registry.yaml within the package folder
|
|
31
|
+
path = os.path.join(self.base_dir, "agent_registry.yaml")
|
|
32
|
+
if not os.path.exists(path):
|
|
33
|
+
return {"agents": []} # Return empty list if file doesn't exist
|
|
34
|
+
|
|
35
|
+
try:
|
|
36
|
+
with open(path, 'r', encoding='utf-8') as f:
|
|
37
|
+
data = yaml.safe_load(f)
|
|
38
|
+
return data if data else {"agents": []}
|
|
39
|
+
except Exception:
|
|
40
|
+
return {"agents": []} # Prevent program crash on error
|
|
41
|
+
|
|
42
|
+
def _load_blueprint(self):
|
|
43
|
+
path = os.path.join(self.base_dir, "blueprint.md")
|
|
44
|
+
try:
|
|
45
|
+
with open(path, 'r', encoding='utf-8') as f:
|
|
46
|
+
return f.read()
|
|
47
|
+
except Exception:
|
|
48
|
+
return "Standards: Minimalism, Security, Modern UI."
|
|
49
|
+
|
|
50
|
+
def handle_input(self, user_input):
|
|
51
|
+
# 1. .vis/ Prefix Handling (MVP Specification Compliance)
|
|
52
|
+
command_text = user_input.lower().strip()
|
|
53
|
+
if not command_text.startswith(".vis/"):
|
|
54
|
+
return f"[VibeSquad] Analyzing request: '{user_input}'. No specific command assigned yet."
|
|
55
|
+
|
|
56
|
+
command_text = command_text.replace(".vis/", "")
|
|
57
|
+
|
|
58
|
+
# 2. AI Provider Selection Handling
|
|
59
|
+
provider = "default"
|
|
60
|
+
if command_text.startswith("local"):
|
|
61
|
+
provider = "Local AI (Ollama/LocalAI)"
|
|
62
|
+
command_text = command_text.replace("local", "").strip()
|
|
63
|
+
elif command_text.startswith("gpt"):
|
|
64
|
+
provider = "OpenAI GPT"
|
|
65
|
+
command_text = command_text.replace("gpt", "").strip()
|
|
66
|
+
elif command_text.startswith("claude"):
|
|
67
|
+
provider = "Anthropic Claude"
|
|
68
|
+
command_text = command_text.replace("claude", "").strip()
|
|
69
|
+
elif command_text.startswith("gemini"):
|
|
70
|
+
provider = "Google Gemini"
|
|
71
|
+
command_text = command_text.replace("gemini", "").strip()
|
|
72
|
+
|
|
73
|
+
# 3. Agent Matching based on User Keywords (Simple Orchestration)
|
|
74
|
+
target_agent = None
|
|
75
|
+
|
|
76
|
+
if "plan" in command_text or "structure" in command_text:
|
|
77
|
+
target_agent = self._find_agent("architect")
|
|
78
|
+
elif "ui" in command_text or "design" in command_text:
|
|
79
|
+
target_agent = self._find_agent("arch_ux")
|
|
80
|
+
elif "secure" in command_text or "check" in command_text:
|
|
81
|
+
target_agent = self._find_agent("qa_evidence")
|
|
82
|
+
elif "pm" in command_text or "manage" in command_text:
|
|
83
|
+
target_agent = self._find_agent("pm_senior")
|
|
84
|
+
|
|
85
|
+
# 4. Result Return (MVP: Generate and return final certified prompt)
|
|
86
|
+
if target_agent:
|
|
87
|
+
# 1. Status message generation
|
|
88
|
+
status_msg = (f"[VibeSquad] Matching Agent Found: **{target_agent['role']}**\n"
|
|
89
|
+
f"Specialty: {target_agent['specialty']}\n"
|
|
90
|
+
f"AI Engine: {provider}\n"
|
|
91
|
+
f"Action: Forwarding request to {target_agent['id']}...")
|
|
92
|
+
|
|
93
|
+
# 2. Certified prompt generation
|
|
94
|
+
certified_prompt = self.craft_agent_prompt(target_agent['id'], provider=provider)
|
|
95
|
+
|
|
96
|
+
# 3. Final combination
|
|
97
|
+
return f"{status_msg}\n\n{certified_prompt}"
|
|
98
|
+
|
|
99
|
+
return f"[VibeSquad] Command recognized but no specific agent assigned for: '{command_text}'."
|
|
100
|
+
|
|
101
|
+
def _find_agent(self, agent_id):
|
|
102
|
+
for agent in self.registry.get('agents', []):
|
|
103
|
+
if agent['id'] == agent_id:
|
|
104
|
+
return agent
|
|
105
|
+
return None
|
|
106
|
+
|
|
107
|
+
def craft_agent_prompt(self, agent_id, provider="default"):
|
|
108
|
+
"""
|
|
109
|
+
Generates the final 'Commander Certified Prompt' to be delivered to the AI.
|
|
110
|
+
"""
|
|
111
|
+
agent = next((a for a in self.registry['agents'] if a['id'] == agent_id), None)
|
|
112
|
+
|
|
113
|
+
if not agent:
|
|
114
|
+
return "You are a general assistant under vibesquad protocols."
|
|
115
|
+
|
|
116
|
+
# Combine agent info + Master Blueprint
|
|
117
|
+
final_prompt = f"""
|
|
118
|
+
### [SYSTEM COMMAND: AUTHORIZED BY VIBESQUAD]
|
|
119
|
+
**Your Role:** {agent['role']}
|
|
120
|
+
**Specialty:** {agent['specialty']}
|
|
121
|
+
**Assigned AI Engine:** {provider}
|
|
122
|
+
|
|
123
|
+
**Mandatory Engineering Standards (Master Blueprint):**
|
|
124
|
+
{self.blueprint}
|
|
125
|
+
|
|
126
|
+
**Current Task Directive:**
|
|
127
|
+
Execute the following request while strictly adhering to the standards above.
|
|
128
|
+
No redundant code. Secure by design. Minimalist UI. [cite: 2026-03-22]
|
|
129
|
+
--------------------------------------------------
|
|
130
|
+
"""
|
|
131
|
+
return final_prompt
|
|
132
|
+
|
|
133
|
+
# Example internal to vibesquad/commander.py
|
|
134
|
+
def generate_final_report(self, project_name, start_time, stats):
|
|
135
|
+
return (
|
|
136
|
+
f"--- š FINAL ORCHESTRATION REPORT: {project_name} ---\n"
|
|
137
|
+
f"Start Time: {start_time}\n"
|
|
138
|
+
f"Backend Stack: {stats.get('backend')}\n"
|
|
139
|
+
f"Tasks Completed: {stats.get('tasks')}\n"
|
|
140
|
+
f"Security Pass Rate: {stats.get('pass_rate')}\n"
|
|
141
|
+
"--- Status: MISSION SUCCESSFUL ---"
|
|
142
|
+
)
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import sys
|
|
2
|
+
import datetime
|
|
3
|
+
import yaml
|
|
4
|
+
import os
|
|
5
|
+
from dotenv import load_dotenv
|
|
6
|
+
from .commander import VibeSquad
|
|
7
|
+
|
|
8
|
+
# Load environment variables from .env file
|
|
9
|
+
load_dotenv()
|
|
10
|
+
|
|
11
|
+
def load_registry(file_path):
|
|
12
|
+
"""Load the agent list from the YAML registry file"""
|
|
13
|
+
try:
|
|
14
|
+
with open(file_path, 'r', encoding='utf-8') as f:
|
|
15
|
+
return yaml.safe_load(f)
|
|
16
|
+
except FileNotFoundError:
|
|
17
|
+
# Return default value if file is missing
|
|
18
|
+
return {"agents": []}
|
|
19
|
+
|
|
20
|
+
def main():
|
|
21
|
+
# 1. Initialize System Components
|
|
22
|
+
# Automatically find the path to agent_registry.yaml within the package.
|
|
23
|
+
base_dir = os.path.dirname(__file__)
|
|
24
|
+
registry_file = os.path.join(base_dir, "agent_registry.yaml")
|
|
25
|
+
|
|
26
|
+
commander = VibeSquad()
|
|
27
|
+
registry = load_registry(registry_file)
|
|
28
|
+
|
|
29
|
+
print("========================================")
|
|
30
|
+
print(" VIBESQUAD SYSTEM v1.1.0 ONLINE ")
|
|
31
|
+
print(" Status: Operational (Free Tier) ")
|
|
32
|
+
print(f" Time: {datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')}")
|
|
33
|
+
print("========================================\n")
|
|
34
|
+
print("Ready for orchestration. Type your command (e.g., '.vis/plan').")
|
|
35
|
+
print("Type 'exit' or 'quit' to terminate.\n")
|
|
36
|
+
|
|
37
|
+
while True:
|
|
38
|
+
try:
|
|
39
|
+
user_input = input("CMD >> ").strip()
|
|
40
|
+
|
|
41
|
+
if user_input.lower() in ['exit', 'quit']:
|
|
42
|
+
print("\n[System] Orchestration terminated. Goodbye.")
|
|
43
|
+
break
|
|
44
|
+
|
|
45
|
+
if not user_input:
|
|
46
|
+
continue
|
|
47
|
+
|
|
48
|
+
# 3. Process Command
|
|
49
|
+
start_time = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
|
|
50
|
+
|
|
51
|
+
# The handle_input method must exist in commander.py.
|
|
52
|
+
if hasattr(commander, 'handle_input'):
|
|
53
|
+
response = commander.handle_input(user_input)
|
|
54
|
+
|
|
55
|
+
# MVP: Add Certified Prompt Header
|
|
56
|
+
if "### [SYSTEM COMMAND:" in response or "### [SYSTEM COMMAND: AUTHORIZED BY VIBESQUAD]" in response:
|
|
57
|
+
print("\n" + "-" * 50)
|
|
58
|
+
print(" š VIBESQUAD CERTIFIED PROMPT GENERATED ")
|
|
59
|
+
print("-" * 50)
|
|
60
|
+
|
|
61
|
+
print(f"\n{response}\n")
|
|
62
|
+
else:
|
|
63
|
+
# Safety mechanism in case method is missing
|
|
64
|
+
print(f"\n[VibeSquad] Echo: {user_input} (Logic not implemented)\n")
|
|
65
|
+
|
|
66
|
+
# 4. Simulation of Pipeline Completion (MVP: .vis/test command)
|
|
67
|
+
if ".vis/test" in user_input.lower():
|
|
68
|
+
print("[System] Running VibeSquad Pipeline Simulation...")
|
|
69
|
+
# Fetch actual stats from blueprint (simulated)
|
|
70
|
+
dummy_stats = {
|
|
71
|
+
'backend': 'PHP Laravel (Relational)',
|
|
72
|
+
'tasks': 7,
|
|
73
|
+
'pass_rate': '100% (Visual Evidence Verified)'
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
# Execute after checking for generate_final_report method existence
|
|
77
|
+
if hasattr(commander, 'generate_final_report'):
|
|
78
|
+
report = commander.generate_final_report("VIBESQUAD_PROTOTYPE", start_time, dummy_stats)
|
|
79
|
+
print(f"\n{report}\n")
|
|
80
|
+
else:
|
|
81
|
+
print("\n[System] Simulation error: Reporting module not found.\n")
|
|
82
|
+
|
|
83
|
+
except KeyboardInterrupt:
|
|
84
|
+
print("\n\n[System] Interrupted by user. Shutting down.")
|
|
85
|
+
sys.exit()
|
|
86
|
+
except Exception as e:
|
|
87
|
+
# Output detailed information on error
|
|
88
|
+
print(f"\nā [Critical Error] {type(e).__name__}: {str(e)}")
|
|
89
|
+
|
|
90
|
+
if __name__ == "__main__":
|
|
91
|
+
main()
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: vibesquad
|
|
3
|
+
Version: 1.1.0
|
|
4
|
+
Summary: A supreme orchestrator for AI agents following the VibeSquad Master Blueprint.
|
|
5
|
+
Author: KSC
|
|
6
|
+
License: MIT
|
|
7
|
+
Description-Content-Type: text/markdown
|
|
8
|
+
Requires-Dist: pyyaml
|
|
9
|
+
Requires-Dist: python-dotenv
|
|
10
|
+
|
|
11
|
+
# š VibeSquad (vibesquad)
|
|
12
|
+
|
|
13
|
+
**The Supreme Orchestrator for High-Performance 1-Person Development Loops.**
|
|
14
|
+
|
|
15
|
+
`VibeSquad` is a framework-agnostic orchestrator agent designed to manage multiple AI specialists (Agents) while enforcing strict minimalist standards, security, and modern UI/UX principles.
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## ā” Quick Start (3-Minute Setup)
|
|
20
|
+
|
|
21
|
+
### 1. Installation
|
|
22
|
+
|
|
23
|
+
Install the package directly from your local source:
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
git clone https://github.com/your-username/vibesquad.git
|
|
27
|
+
cd vibesquad
|
|
28
|
+
pip install -e .
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
### 2. Basic Usage (Python)
|
|
32
|
+
|
|
33
|
+
You can integrate VibeSquad into any AI agent system or use it as a standalone prompt generator.
|
|
34
|
+
|
|
35
|
+
```python
|
|
36
|
+
from vibesquad import VibeSquad
|
|
37
|
+
|
|
38
|
+
# Initialize the VibeSquad
|
|
39
|
+
commander = VibeSquad()
|
|
40
|
+
|
|
41
|
+
# 1. Get the Master Blueprint (System Instructions)
|
|
42
|
+
# (Logic: commander.blueprint contains the content)
|
|
43
|
+
print("VibeSquad Master Blueprint Loaded Successfully!")
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
### 3. Command Interface
|
|
47
|
+
|
|
48
|
+
Run the built-in terminal interface to start orchestrating:
|
|
49
|
+
|
|
50
|
+
```bash
|
|
51
|
+
dotcom
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
---
|
|
55
|
+
|
|
56
|
+
## šļø Core Standards (The Master Blueprint)
|
|
57
|
+
|
|
58
|
+
When VibeSquad orchestrates a project, it strictly enforces the following rules defined in the `blueprint.md`:
|
|
59
|
+
|
|
60
|
+
### šØ 1. Modern UI/UX Standards
|
|
61
|
+
|
|
62
|
+
- **Minimalist Design**: Zero clutter, focus on core user intent.
|
|
63
|
+
- **Tailwind-First**: Direct, utility-first styling for speed and consistency.
|
|
64
|
+
- **Performance**: Optimized assets and fast load times.
|
|
65
|
+
|
|
66
|
+
### š”ļø 2. Security & Engineering
|
|
67
|
+
|
|
68
|
+
- **Secure by Design**: Input validation, CSRF protection, and secure API handling as defaults.
|
|
69
|
+
- **PHP Laravel / Modern Stacks**: Leveraging robust frameworks for backend stability.
|
|
70
|
+
- **Scalable Architecture**: Clean code structure that grows with your project.
|
|
71
|
+
|
|
72
|
+
### āļø 3. 1-Person Dev Optimization
|
|
73
|
+
|
|
74
|
+
- **Unified Vision**: Planning, Development, and QA are synchronized under one command.
|
|
75
|
+
- **Auto-Documentation**: Every phase generates standardized reports for future maintenance.
|
|
76
|
+
|
|
77
|
+
---
|
|
78
|
+
|
|
79
|
+
## š Project Structure
|
|
80
|
+
|
|
81
|
+
- `vibesquad/`: Core logic and built-in Master Blueprint.
|
|
82
|
+
- `examples/`: Ready-to-use scripts for various frameworks.
|
|
83
|
+
- `tests/`: Reliability check suite.
|
|
84
|
+
|
|
85
|
+
---
|
|
86
|
+
|
|
87
|
+
## š License
|
|
88
|
+
|
|
89
|
+
Distributed under the **MIT License**. See `LICENSE` for more information.
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
|
|
93
|
+
## š¤ Contributing
|
|
94
|
+
|
|
95
|
+
Authorized by **KSC**. For contributions or bug reports, please open an issue in the repository.
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
README.md
|
|
2
|
+
pyproject.toml
|
|
3
|
+
tests/test_core.py
|
|
4
|
+
vibesquad/__init__.py
|
|
5
|
+
vibesquad/agent_registry.yaml
|
|
6
|
+
vibesquad/blueprint.md
|
|
7
|
+
vibesquad/commander.py
|
|
8
|
+
vibesquad/main.py
|
|
9
|
+
vibesquad.egg-info/PKG-INFO
|
|
10
|
+
vibesquad.egg-info/SOURCES.txt
|
|
11
|
+
vibesquad.egg-info/dependency_links.txt
|
|
12
|
+
vibesquad.egg-info/entry_points.txt
|
|
13
|
+
vibesquad.egg-info/requires.txt
|
|
14
|
+
vibesquad.egg-info/top_level.txt
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
vibesquad
|