Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -164,7 +164,7 @@ Claude Nexus Proxy - High-performance proxy for Claude API with real-time monito
### Repository Structure

```
claude-nexus-proxy/
claude-nexus/
├── packages/shared/ # Shared types and utilities
├── services/
│ ├── proxy/ # API proxy service (Port 3000)
Expand Down
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ Please be respectful and constructive in all interactions. We aim to maintain a
## Getting Started

1. Fork the repository
2. Clone your fork: `git clone https://github.com/yourusername/claude-nexus-proxy.git`
2. Clone your fork: `git clone https://github.com/yourusername/claude-nexus.git`
3. Create a feature branch: `git checkout -b feature/your-feature-name`
4. Make your changes
5. Submit a pull request
Expand Down
438 changes: 355 additions & 83 deletions IMPORTANT_FILES.yaml

Large diffs are not rendered by default.

12 changes: 6 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -110,8 +110,8 @@ For administrators or heavy users, you can follow the token usage and see when a

```bash
# Clone the repository
git clone https://github.com/yourusername/claude-nexus-proxy.git
cd claude-nexus-proxy
git clone https://github.com/yourusername/claude-nexus.git
cd claude-nexus

# Install dependencies
bun install
Expand Down Expand Up @@ -216,7 +216,7 @@ Features:
## Architecture

```
claude-nexus-proxy/
claude-nexus/
├── packages/shared/ # Shared types and utilities
├── services/
│ ├── proxy/ # Proxy API service
Expand Down Expand Up @@ -294,7 +294,7 @@ See [AWS Infrastructure Guide](docs/03-Operations/deployment/aws-infrastructure.

```bash
# Build images individually
docker build -f docker/proxy/Dockerfile -t claude-nexus-proxy:local .
docker build -f docker/proxy/Dockerfile -t claude-nexus:local .
docker build -f docker/dashboard/Dockerfile -t claude-nexus-dashboard:local .
```

Expand Down Expand Up @@ -349,6 +349,6 @@ Contributions are welcome! Please read our [Contributing Guidelines](CONTRIBUTIN
## Support

- 📖 [Full Documentation](docs/README.md)
- 🐛 [Issue Tracker](https://github.com/yourusername/claude-nexus-proxy/issues)
- 💬 [Discussions](https://github.com/yourusername/claude-nexus-proxy/discussions)
- 🐛 [Issue Tracker](https://github.com/yourusername/claude-nexus/issues)
- 💬 [Discussions](https://github.com/yourusername/claude-nexus/discussions)
- 📊 [Changelog](docs/06-Reference/changelog.md)
12 changes: 6 additions & 6 deletions docker/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,14 @@ This directory contains the Docker configurations for the Claude Nexus Proxy pro

## Images

### 1. Proxy Service (`alanpurestake/claude-nexus-proxy`)
### 1. Proxy Service (`moonsonglabs/claude-nexus-proxy`)

- Port: 3000
- Handles Claude API proxying
- Manages authentication and token tracking
- Stores request/response data

### 2. Dashboard Service (`alanpurestake/claude-nexus-dashboard`)
### 2. Dashboard Service (`moonsonglabs/claude-nexus-dashboard`)

- Port: 3001
- Web UI for monitoring and analytics
Expand Down Expand Up @@ -40,8 +40,8 @@ This directory contains the Docker configurations for the Claude Nexus Proxy pro

```bash
# Build individually with custom tags
docker build -f proxy/Dockerfile -t alanpurestake/claude-nexus-proxy:v9 ..
docker build -f dashboard/Dockerfile -t alanpurestake/claude-nexus-dashboard:v9 ..
docker build -f proxy/Dockerfile -t moonsonglabs/claude-nexus-proxy:v9 ..
docker build -f dashboard/Dockerfile -t moonsonglabs/claude-nexus-dashboard:v9 ..
```

## Pushing Images
Expand Down Expand Up @@ -93,13 +93,13 @@ docker-compose --project-name claude-nexus --env-file ../.env up -d
# Proxy service
docker run -p 3000:3000 \
-v ./credentials:/app/credentials:ro \
alanpurestake/claude-nexus-proxy:latest
moonsonglabs/claude-nexus-proxy:latest

# Dashboard service
docker run -p 3001:3001 \
-e DASHBOARD_API_KEY=your-key \
-e PROXY_API_URL=http://localhost:3000 \
alanpurestake/claude-nexus-dashboard:latest
moonsonglabs/claude-nexus-dashboard:latest
```

## Environment Variables
Expand Down
34 changes: 17 additions & 17 deletions docker/build-images.sh
Original file line number Diff line number Diff line change
Expand Up @@ -44,12 +44,12 @@ cd "$PROJECT_ROOT"

# Build proxy image (always build as latest first)
echo -e "\n${BLUE}Building Proxy Service...${NC}"
docker build -f docker/proxy/Dockerfile -t alanpurestake/claude-nexus-proxy:latest .
docker build -f docker/proxy/Dockerfile -t moonsonglabs/claude-nexus-proxy:latest .
if [ $? -eq 0 ]; then
echo -e "${GREEN}✓ Proxy image built successfully${NC}"
# Tag with specific version if provided
if [ "$TAG" != "latest" ]; then
docker tag alanpurestake/claude-nexus-proxy:latest alanpurestake/claude-nexus-proxy:${TAG}
docker tag moonsonglabs/claude-nexus-proxy:latest moonsonglabs/claude-nexus-proxy:${TAG}
echo -e "${GREEN}✓ Also tagged as '${TAG}'${NC}"
fi
else
Expand All @@ -59,12 +59,12 @@ fi

# Build dashboard image (always build as latest first)
echo -e "\n${BLUE}Building Dashboard Service...${NC}"
docker build -f docker/dashboard/Dockerfile -t alanpurestake/claude-nexus-dashboard:latest .
docker build -f docker/dashboard/Dockerfile -t moonsonglabs/claude-nexus-dashboard:latest .
if [ $? -eq 0 ]; then
echo -e "${GREEN}✓ Dashboard image built successfully${NC}"
# Tag with specific version if provided
if [ "$TAG" != "latest" ]; then
docker tag alanpurestake/claude-nexus-dashboard:latest alanpurestake/claude-nexus-dashboard:${TAG}
docker tag moonsonglabs/claude-nexus-dashboard:latest moonsonglabs/claude-nexus-dashboard:${TAG}
echo -e "${GREEN}✓ Also tagged as '${TAG}'${NC}"
fi
else
Expand All @@ -74,17 +74,17 @@ fi

# Show image sizes
echo -e "\n${BLUE}Image Sizes:${NC}"
docker images | grep -E "claude-nexus-(proxy|dashboard)|REPOSITORY" | grep -E "${TAG}|REPOSITORY" | head -5
docker images | grep -E "moonsonglabs/claude-nexus-(proxy|dashboard)|REPOSITORY" | grep -E "${TAG}|latest|REPOSITORY" | head -5

echo -e "\n${GREEN}Build completed successfully!${NC}"
echo -e "\nImages built:"
echo -e " ${YELLOW}alanpurestake/claude-nexus-proxy:latest${NC}"
echo -e " ${YELLOW}alanpurestake/claude-nexus-dashboard:latest${NC}"
echo -e " ${YELLOW}moonsonglabs/claude-nexus-proxy:latest${NC}"
echo -e " ${YELLOW}moonsonglabs/claude-nexus-dashboard:latest${NC}"

if [ "$TAG" != "latest" ]; then
echo -e "\nAlso tagged as:"
echo -e " ${YELLOW}alanpurestake/claude-nexus-proxy:${TAG}${NC}"
echo -e " ${YELLOW}alanpurestake/claude-nexus-dashboard:${TAG}${NC}"
echo -e " ${YELLOW}moonsonglabs/claude-nexus-proxy:${TAG}${NC}"
echo -e " ${YELLOW}moonsonglabs/claude-nexus-dashboard:${TAG}${NC}"
fi

echo -e "\nTo run the services:"
Expand All @@ -106,23 +106,23 @@ fi

echo -e "\n${YELLOW}Using Docker Run:${NC}"
echo -e " ${BLUE}# Proxy service${NC}"
echo -e " ${BLUE}docker run -d -p 3000:3000 alanpurestake/claude-nexus-proxy:${TAG}${NC}"
echo -e " ${BLUE}docker run -d -p 3000:3000 moonsonglabs/claude-nexus-proxy:${TAG}${NC}"
echo -e " ${BLUE}# Dashboard service${NC}"
echo -e " ${BLUE}docker run -d -p 3001:3001 -e DASHBOARD_API_KEY=your-key alanpurestake/claude-nexus-dashboard:${TAG}${NC}"
echo -e " ${BLUE}docker run -d -p 3001:3001 -e DASHBOARD_API_KEY=your-key moonsonglabs/claude-nexus-dashboard:${TAG}${NC}"

# Add push instructions
echo -e "\n${YELLOW}To push to Docker Hub:${NC}"
if [ "$TAG" != "latest" ]; then
echo -e " ${BLUE}# Push both latest and version tags:${NC}"
echo -e " ${BLUE}docker push alanpurestake/claude-nexus-proxy:latest${NC}"
echo -e " ${BLUE}docker push alanpurestake/claude-nexus-proxy:${TAG}${NC}"
echo -e " ${BLUE}docker push alanpurestake/claude-nexus-dashboard:latest${NC}"
echo -e " ${BLUE}docker push alanpurestake/claude-nexus-dashboard:${TAG}${NC}"
echo -e " ${BLUE}docker push moonsonglabs/claude-nexus-proxy:latest${NC}"
echo -e " ${BLUE}docker push moonsonglabs/claude-nexus-proxy:${TAG}${NC}"
echo -e " ${BLUE}docker push moonsonglabs/claude-nexus-dashboard:latest${NC}"
echo -e " ${BLUE}docker push moonsonglabs/claude-nexus-dashboard:${TAG}${NC}"
echo -e "\n ${YELLOW}Or use the push script:${NC}"
echo -e " ${BLUE}./docker/push-images.sh ${TAG}${NC}"
else
echo -e " ${BLUE}docker push alanpurestake/claude-nexus-proxy:latest${NC}"
echo -e " ${BLUE}docker push alanpurestake/claude-nexus-dashboard:latest${NC}"
echo -e " ${BLUE}docker push moonsonglabs/claude-nexus-proxy:latest${NC}"
echo -e " ${BLUE}docker push moonsonglabs/claude-nexus-dashboard:latest${NC}"
echo -e "\n ${YELLOW}Or use the push script:${NC}"
echo -e " ${BLUE}./docker/push-images.sh${NC}"
fi
Expand Down
2 changes: 1 addition & 1 deletion docker/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ services:
context: ../
dockerfile: docker/proxy/Dockerfile
image: claude-nexus-proxy:local
container_name: claude-nexus-proxy
container_name: claude-nexus
environment:
# Server configuration
PORT: 3000
Expand Down
16 changes: 8 additions & 8 deletions docker/push-images.sh
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ fi

# Push proxy image
echo -e "\n${BLUE}Pushing Proxy Service...${NC}"
docker push alanpurestake/claude-nexus-proxy:${TAG}
docker push moonsonglabs/claude-nexus-proxy:${TAG}
if [ $? -eq 0 ]; then
echo -e "${GREEN}✓ Proxy image pushed successfully${NC}"
else
Expand All @@ -52,7 +52,7 @@ fi

# Push dashboard image
echo -e "\n${BLUE}Pushing Dashboard Service...${NC}"
docker push alanpurestake/claude-nexus-dashboard:${TAG}
docker push moonsonglabs/claude-nexus-dashboard:${TAG}
if [ $? -eq 0 ]; then
echo -e "${GREEN}✓ Dashboard image pushed successfully${NC}"
else
Expand All @@ -64,15 +64,15 @@ fi
if [ "$TAG" != "latest" ] && [ "$PUSH_LATEST" = "yes" ]; then
echo -e "\n${BLUE}Also pushing 'latest' tags...${NC}"

docker push alanpurestake/claude-nexus-proxy:latest
docker push moonsonglabs/claude-nexus-proxy:latest
if [ $? -eq 0 ]; then
echo -e "${GREEN}✓ Proxy 'latest' pushed successfully${NC}"
else
echo -e "${RED}✗ Failed to push proxy 'latest'${NC}"
exit 1
fi

docker push alanpurestake/claude-nexus-dashboard:latest
docker push moonsonglabs/claude-nexus-dashboard:latest
if [ $? -eq 0 ]; then
echo -e "${GREEN}✓ Dashboard 'latest' pushed successfully${NC}"
else
Expand All @@ -83,9 +83,9 @@ fi

echo -e "\n${GREEN}Push completed successfully!${NC}"
echo -e "\nImages available at:"
echo -e " ${YELLOW}https://hub.docker.com/r/alanpurestake/claude-nexus-proxy${NC}"
echo -e " ${YELLOW}https://hub.docker.com/r/alanpurestake/claude-nexus-dashboard${NC}"
echo -e " ${YELLOW}https://hub.docker.com/r/moonsonglabs/claude-nexus-proxy${NC}"
echo -e " ${YELLOW}https://hub.docker.com/r/moonsonglabs/claude-nexus-dashboard${NC}"

echo -e "\nTo pull and run:"
echo -e " ${BLUE}docker pull alanpurestake/claude-nexus-proxy:${TAG}${NC}"
echo -e " ${BLUE}docker pull alanpurestake/claude-nexus-dashboard:${TAG}${NC}"
echo -e " ${BLUE}docker pull moonsonglabs/claude-nexus-proxy:${TAG}${NC}"
echo -e " ${BLUE}docker pull moonsonglabs/claude-nexus-dashboard:${TAG}${NC}"
2 changes: 1 addition & 1 deletion docs/00-Overview/architecture.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ Claude Nexus has been refactored into a microservices architecture with two sepa
## Directory Structure

```
claude-nexus-proxy/
claude-nexus/
├── packages/
│ └── shared/ # Shared types and configurations
├── services/
Expand Down
4 changes: 2 additions & 2 deletions docs/00-Overview/quickstart.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@
### 1. Clone and configure

```bash
git clone https://github.com/moonsong-labs/claude-nexus-proxy.git
cd claude-nexus-proxy
git clone https://github.com/moonsong-labs/claude-nexus.git
cd claude-nexus
cp .env.example .env

# ⚠️ CRITICAL: Edit .env and set DASHBOARD_API_KEY!
Expand Down
6 changes: 3 additions & 3 deletions docs/01-Getting-Started/development.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ This guide covers setting up and developing Claude Nexus Proxy.
### 1. Clone and Install

```bash
git clone https://github.com/yourusername/claude-nexus-proxy.git
cd claude-nexus-proxy
git clone https://github.com/yourusername/claude-nexus.git
cd claude-nexus
bun install
```

Expand Down Expand Up @@ -60,7 +60,7 @@ bun run dev:dashboard # Port 3001
## Project Structure

```
claude-nexus-proxy/
claude-nexus/
├── packages/
│ └── shared/ # Shared types and utilities
├── services/
Expand Down
12 changes: 6 additions & 6 deletions docs/01-Getting-Started/installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ Before you begin, ensure you have the following:
#### 1. Clone the Repository

```bash
git clone https://github.com/yourusername/claude-nexus-proxy.git
cd claude-nexus-proxy
git clone https://github.com/yourusername/claude-nexus.git
cd claude-nexus
```

#### 2. Install Dependencies
Expand Down Expand Up @@ -100,8 +100,8 @@ bun run dev:dashboard # Dashboard on port 3001

```bash
# Clone the repository
git clone https://github.com/yourusername/claude-nexus-proxy.git
cd claude-nexus-proxy
git clone https://github.com/yourusername/claude-nexus.git
cd claude-nexus

# Create .env file
cp .env.example .env
Expand All @@ -118,7 +118,7 @@ docker compose logs -f

```bash
# Pull the images
docker pull alanpurestake/claude-nexus-proxy:latest
docker pull alanpurestake/claude-nexus:latest
docker pull alanpurestake/claude-nexus-dashboard:latest

# Run PostgreSQL
Expand All @@ -137,7 +137,7 @@ docker run -d \
-e DATABASE_URL=postgresql://postgres:[email protected]:5432/claude_nexus \
-e STORAGE_ENABLED=true \
-v $(pwd)/credentials:/app/credentials \
alanpurestake/claude-nexus-proxy:latest
alanpurestake/claude-nexus:latest

# Run the dashboard
docker run -d \
Expand Down
6 changes: 3 additions & 3 deletions docs/03-Operations/deployment/aws-infrastructure.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ Each EC2 instance should have the following structure in the ubuntu user's home
```
/home/ubuntu/
├── .env # Environment configuration
├── claude-nexus-proxy/ # Git repository
├── claude-nexus/ # Git repository
│ └── scripts/ops/ # Operational scripts
├── credentials/ # Domain credential files
│ ├── domain1.com.credentials.json
Expand Down Expand Up @@ -68,8 +68,8 @@ resource "aws_instance" "nexus_proxy_prod" {
curl -fsSL https://get.docker.com | bash

# Clone repository
git clone https://github.com/yourusername/claude-nexus-proxy.git /home/ubuntu/claude-nexus-proxy
chown -R ubuntu:ubuntu /home/ubuntu/claude-nexus-proxy
git clone https://github.com/yourusername/claude-nexus.git /home/ubuntu/claude-nexus
chown -R ubuntu:ubuntu /home/ubuntu/claude-nexus

# Create required directories
mkdir -p /home/ubuntu/credentials
Expand Down
8 changes: 4 additions & 4 deletions docs/03-Operations/deployment/docker-compose.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@ The Docker Compose configuration includes:

```bash
# Clone the repository
git clone https://github.com/yourusername/claude-nexus-proxy.git
cd claude-nexus-proxy
git clone https://github.com/yourusername/claude-nexus.git
cd claude-nexus

# Copy and edit environment file
cp .env.example .env
Expand Down Expand Up @@ -89,7 +89,7 @@ services:
retries: 5

proxy:
image: alanpurestake/claude-nexus-proxy:latest
image: moonsonglabs/claude-nexus-proxy:latest
depends_on:
postgres:
condition: service_healthy
Expand All @@ -104,7 +104,7 @@ services:
restart: unless-stopped

dashboard:
image: alanpurestake/claude-nexus-dashboard:latest
image: moonsonglabs/claude-nexus-dashboard:latest
depends_on:
postgres:
condition: service_healthy
Expand Down
Loading