Files
firefrost-operations-manual/docs/tasks/claude-infrastructure-access/README.md
Claude b38f08189e feat: Add task_number to YAML frontmatter for 26 tasks
Long-term fix for mobile task index - task numbers now in frontmatter.

Numbers added from BACKLOG.md cross-reference:
#2 rank-system-deployment
#3 fire-frost-holdings-restructuring
#14 vaultwarden-ssh-setup
#22 netdata-deployment
#23 department-structure
#26 modpack-version-checker
#32 terraria-branding-training-arc
#35 pokerole-wikijs-deployment
#36 notebooklm-integration
#40 world-backup-automation
#44 nc1-node-usage-stats
#45 steam-and-state-server
#48 n8n-rebuild
#51 ignis-protocol
#55 discord-invite-setup
#65 claude-infrastructure-access
#67 nc1-security-monitoring
#82 plane-decommissioning
#87 arbiter-2-1-cancellation-flow
#89 staff-portal-consolidation
#90 decap-tasks-collection
#91 server-matrix-node-fix
#92 desktop-mcp
#93 trinity-codex
#94 global-restart-scheduler
#98 discord-channel-automation
#99 claude-projects-architecture

Chronicler #69
2026-04-08 14:32:38 +00:00

141 lines
2.8 KiB
Markdown

---
task_number: 65
status: open
priority: P2
owner: Michael
created: 2026-03-20
---
task_number: 65
# Task #65: Grant Claude Full Infrastructure Access
**Status:** PENDING
**Priority:** HIGH
**Time Estimate:** 30-45 minutes
**Created:** March 20, 2026 (by The Guide, Chronicler #35)
---
task_number: 65
## OBJECTIVE
Grant Claude (The Chronicler) full programmatic access to Firefrost infrastructure.
**Access needed:**
1. **Gitea API token** (create issues, manage users, repos)
2. **SSH keys for all 6 servers** (diagnostics, fixes, deployments)
---
task_number: 65
## WHY THIS MATTERS
**Current:** Claude creates issue *templates*, asks Michael to run every server command
**After:** Claude creates real issues, SSHs to servers, fixes problems autonomously
**Time saved:** 45-100 minutes per session
---
task_number: 65
## IMPLEMENTATION
### 1. Generate SSH Key
```bash
ssh-keygen -t ed25519 -C "claude@firefrostgaming.com" -f ~/.ssh/claude_ed25519
```
### 2. Deploy to All Servers
```bash
# Get public key
cat ~/.ssh/claude_ed25519.pub
# Add to each server
ssh root@SERVER_IP
echo "PUBLIC_KEY" >> ~/.ssh/authorized_keys
```
**Servers:**
- Command Center: root@63.143.34.217
- Ghost VPS: architect@64.50.188.14
- Billing: root@38.68.14.188
- Panel: root@45.94.168.138
- TX1: root@38.68.14.26
- NC1: root@216.239.104.130
### 3. Store in Vaultwarden
- Item: "Claude SSH Key"
- Private key + Public key
- **BLOCKED BY TASK #6**
### 4. Generate Gitea API Token
1. git.firefrostgaming.com → Settings → Applications
2. Generate New Token
3. Name: "Claude (The Chronicler) - Full Admin API"
4. Scopes: write:issue, write:repository, write:user, write:admin
5. Copy token immediately
### 5. Update Session Prompts
Add to NEXT-SESSION-START-PROMPT.md:
```
Gitea API Token: [TOKEN_HERE]
SSH Key: In Vaultwarden "Claude SSH Key"
```
### 6. Test
- API: Create test issue
- SSH: Connect to all 6 servers
---
task_number: 65
## WHAT CLAUDE CAN DO
**Gitea API:**
- Create issues directly (no templates)
- Manage users/permissions
- Label, assign, close issues
**SSH Access:**
- Check service status
- Read logs
- Restart services
- Deploy updates
- Respond to incidents
---
task_number: 65
## SECURITY
- SSH key in Vaultwarden (encrypted)
- API token in session prompts (ephemeral)
- Can revoke anytime
- Full audit trail
**Revoke SSH:**
```bash
sed -i '/claude@firefrostgaming.com/d' ~/.ssh/authorized_keys
```
**Revoke API:** Settings → Applications → Delete token
---
task_number: 65
## CHECKLIST
- [ ] SSH key generated
- [ ] Deployed to 6 servers
- [ ] Stored in Vaultwarden
- [ ] API token generated
- [ ] Session prompts updated
- [ ] Tested SSH + API
---
task_number: 65
**Full documentation:** Above sections expand on all details
**Created by:** The Guide (Chronicler #35)