Skip to content

Commit f6fb796

Browse files
authored
Merge pull request #86 from sallyom/git-spec-kit
adds git config and spec-kit to claude-code-runner
2 parents b5f936b + 84e6dc3 commit f6fb796

26 files changed

+3111
-239
lines changed

OPENSHIFT_DEPLOY.md

Lines changed: 103 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,103 @@
1+
# vTeam OpenShift Deployment Guide
2+
3+
## What is vTeam?
4+
5+
**vTeam** is a Kubernetes-native AI automation platform that combines Claude Code CLI with browser automation and spec-driven development capabilities.
6+
7+
### Core Components
8+
- **Web UI**: React frontend for creating and monitoring AI sessions
9+
- **Backend API**: Go service managing sessions and Kubernetes resources
10+
- **Operator**: Kubernetes controller creating AI runner jobs
11+
- **Claude Runner**: Python service executing AI tasks with browser automation and SpekKit
12+
13+
### Key Features
14+
- **Website Analysis**: AI-powered browser automation using Playwright MCP
15+
- **Spec-Driven Development**: Generate specifications, plans, and tasks with `/specify`, `/plan`, `/tasks` commands
16+
- **Git Integration**: Clone repositories, configure Git users, support SSH/token authentication
17+
- **Configurable Defaults**: Set organization-wide Git repositories and settings via ConfigMap
18+
19+
## Prerequisites
20+
21+
- OpenShift cluster with admin access
22+
- Container registry access (quay.io/ambient_code)
23+
- `kubectl` or `oc` CLI configured
24+
25+
## Quick Deploy
26+
27+
1. **Navigate to manifests directory**:
28+
```bash
29+
cd components/manifests
30+
```
31+
32+
2. **Run deployment script**:
33+
```bash
34+
./deploy.sh
35+
```
36+
37+
3. **Access the UI**: Check for route creation or port-forward:
38+
```bash
39+
oc get route frontend-route
40+
# or
41+
kubectl port-forward svc/frontend-service 3000:3000
42+
```
43+
44+
## What Gets Deployed
45+
46+
### Core Services
47+
- **Frontend** (`vteam_frontend:latest`) - React UI on port 3000
48+
- **Backend** (`vteam_backend:latest`) - Go API on port 8080
49+
- **Operator** (`vteam_operator:latest`) - Kubernetes controller
50+
- **Git ConfigMap** - Default Git configuration (optional)
51+
52+
### Per-Session Resources
53+
- **Claude Runner Jobs** (`vteam_claude_runner:latest`) - AI execution pods
54+
- **AgenticSession CRDs** - Custom resources tracking AI sessions
55+
- **Persistent Storage** - Session state and artifacts
56+
57+
## Configuration
58+
59+
### Git Integration (Optional)
60+
Edit `git-configmap.yaml` to set default repositories:
61+
```yaml
62+
git-repositories: |
63+
https://github.com/your-org/project.git
64+
https://github.com/your-org/docs.git
65+
```
66+
67+
### Environment Variables
68+
Key operator settings:
69+
- `IMAGE_PULL_POLICY=Always` (default) - Always pull latest images
70+
- `AMBIENT_CODE_RUNNER_IMAGE` - Claude runner image to use
71+
72+
## Usage
73+
74+
1. **Open the web UI** at the frontend route/port
75+
2. **Create AI Session**:
76+
- Enter prompt and target website URL
77+
- Configure Git settings (optional)
78+
- Submit to start AI analysis
79+
80+
3. **Use SpekKit Commands**:
81+
- `/specify Build user authentication system` - Generate specifications
82+
- `/plan Use Node.js and PostgreSQL` - Create implementation plans
83+
- `/tasks Focus on backend API first` - Break down into tasks
84+
85+
4. **Monitor Progress**: View real-time updates and final results in the UI
86+
87+
## Troubleshooting
88+
89+
- **Check pod logs**: `kubectl logs -l app=backend-api`
90+
- **Verify operator**: `kubectl logs -l app=agentic-operator`
91+
- **Session status**: `kubectl get agenticsessions`
92+
- **Storage issues**: `kubectl get pvc vteam-state-storage`
93+
94+
## Cleanup
95+
96+
```bash
97+
kubectl delete -f .
98+
kubectl delete crd agenticsessions.vteam.ambient-code
99+
```
100+
101+
---
102+
103+
**Need help?** Check the logs or create an issue in the vTeam repository.

0 commit comments

Comments
 (0)