Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
d792f8c
Update to go 1.25.1
jlrosende Sep 14, 2025
7a115c8
add new projects with new UI
jlrosende Sep 14, 2025
10080b4
add new environments
jlrosende Sep 15, 2025
b7f2539
add new environments
jlrosende Sep 15, 2025
6e2e044
Improve the TUI with .spec-kit anc claude
jlrosende Sep 15, 2025
209f6f0
Remove claude agents
jlrosende Sep 15, 2025
984454f
Merge branch '001-a-project-manager' into feature/update-dependencies
jlrosende Sep 15, 2025
275feae
Remove claude agents
jlrosende Sep 15, 2025
00257df
Remove claude agents
jlrosende Sep 15, 2025
7516867
Remove claude agents
jlrosende Sep 15, 2025
524f72a
Test litellm as a service
jlrosende Sep 15, 2025
7e64576
Add themes and config precendence
jlrosende Sep 16, 2025
10ed848
Some fixes and more themes
jlrosende Sep 16, 2025
da2549c
Improvement in the style and format
jlrosende Sep 16, 2025
56aad48
Create v1 and v2 TUI to refactor the code.
jlrosende Sep 18, 2025
ed8b765
Refactor of project and main views
jlrosende Sep 19, 2025
d73fa4c
Views and funtionality almost done
jlrosende Sep 19, 2025
4f97f34
Upadet Spec-kit
jlrosende Sep 21, 2025
983d6fb
feat: persist TUI project edits, rename per-project gitconfig, preser…
Sep 22, 2025
ce942b3
(feature) new command
Oct 5, 2025
493c4ad
Merge pull request #3 from jlrosende/001-cli-new-project
jlrosende Oct 5, 2025
012bbef
(feature) delete command
Oct 5, 2025
a7b68ca
(feature) delete modal
Oct 5, 2025
c2ca2a0
Merge pull request #4 from jlrosende/002-delete-command-overview
jlrosende Oct 5, 2025
08d23b5
Add edit command for project and environments
Oct 11, 2025
52510fc
Merge pull request #5 from jlrosende/003-edit-command-definition
jlrosende Oct 11, 2025
f1fb24f
update new command to add environments
Oct 13, 2025
c087b3a
Some tasks completed
Oct 14, 2025
35b717a
tasks 004 completed
Oct 14, 2025
15d652f
Point to return
Oct 26, 2025
77aa1db
Commands standarized
Oct 26, 2025
8ddcdc0
Merge pull request #6 from jlrosende/004-new-env-command
jlrosende Oct 26, 2025
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
9 changes: 9 additions & 0 deletions .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
FROM mcr.microsoft.com/devcontainers/go:1.25-bookworm

ENV SHELL=/bin/zsh

RUN curl -fsSL https://opencode.ai/install | bash && \
mv $HOME/.opencode/bin/opencode /usr/local/bin/opencode && \
curl -fsSL https://dl.dagger.io/dagger/install.sh | BIN_DIR=/usr/local/bin sh && \
apt upadate && \
apt install ripgrep
31 changes: 31 additions & 0 deletions .devcontainer/compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
services:
project-manager:
container_name: project-manager
build:
context: ../
dockerfile: ./.devcontainer/Dockerfile
volumes:
- ../..:/workspaces:cached
- /lib/modules:/lib/modules:ro
command: sleep infinity
env_file:
- ./.env
environment:
- DAGGER_RUNNER_HOST=container://dagger-engine:8080
- _EXPERIMENTAL_DAGGER_RUNNER_HOST=container://dagger-engine
depends_on:
- dagger-engine

dagger-engine:
container_name: dagger-engine
image: registry.dagger.io/engine:v0.19.2
command:
- --oci-worker-net
- host
privileged: true
volumes:
- dagger-engine-state:/var/lib/dagger
# - ./.devcontainer/engine.toml:/etc/dagger/engine.toml

volumes:
dagger-engine-state:
88 changes: 51 additions & 37 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,41 +1,55 @@
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
// README at: https://github.com/devcontainers/templates/tree/main/src/go
{
"name": "Go",
// Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile
"image": "mcr.microsoft.com/devcontainers/go:1.23-bookworm",
"features": {
"ghcr.io/devcontainers/features/aws-cli:1": {},
"ghcr.io/devcontainers/features/github-cli:1": {},
"ghcr.io/devcontainers/features/docker-in-docker:2": {},
"ghcr.io/devcontainers/features/powershell:1.5.1": {}
},
// Features to add to the dev container. More info: https://containers.dev/features.
// "features": {},
// Use 'forwardPorts' to make a list of ports inside the container available locally.
// "forwardPorts": [],
// Use 'postCreateCommand' to run commands after the container is created.
// "postCreateCommand": "go version",
// Configure tool-specific properties.
"customizations": {
"vscode": {
"extensions": [
"github.vscode-github-actions",
"ms-vscode.makefile-tools",
"golang.go",
"ms-azuretools.vscode-docker",
"HashiCorp.HCL",
"tamasfe.even-better-toml"
],
"settings": {
"aws.telemetry": false,
"go.lintTool": "golangci-lint",
"go.lintFlags": [
"--fast"
]
}
}
}
// Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root.
// "remoteUser": "root"
"name": "Go",
// Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile
"dockerComposeFile": "compose.yml",
"service": "project-manager",
"workspaceFolder": "/workspaces/${localWorkspaceFolderBasename}",
"features": {
"ghcr.io/devcontainers/features/aws-cli:1": {},
"ghcr.io/devcontainers/features/github-cli:1": {},
"ghcr.io/devcontainers/features/docker-outside-of-docker:1": {},
"ghcr.io/devcontainers/features/powershell:1.5.1": {},
"ghcr.io/devcontainers/features/node:1": {},
"ghcr.io/devcontainers-extra/features/uv:1": {}
},
// Features to add to the dev container. More info: https://containers.dev/features.
// "features": {},
// Use 'forwardPorts' to make a list of ports inside the container available locally.
// "forwardPorts": [],
// Use 'postCreateCommand' to run commands after the container is created.
// "postCreateCommand": "go version",
// Configure tool-specific properties.
"customizations": {
"vscode": {
"extensions": [
"github.vscode-github-actions",
"ms-vscode.makefile-tools",
"golang.go",
"ms-azuretools.vscode-docker",
"HashiCorp.HCL",
"tamasfe.even-better-toml",
"mhutchie.git-graph"
],
"settings": {
"aws.telemetry": false,
"go.lintTool": "golangci-lint",
"go.lintFlags": [
"--fast"
],
"remote.autoForwardPorts": false
}
}
},
"otherPortsAttributes": {
"onAutoForward": "ignore"
},
"portsAttributes": {
"*": {
"onAutoForward": "ignore"
}
}
// Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root.
// "remoteUser": "root"
}
File renamed without changes.
26 changes: 26 additions & 0 deletions .devcontainer/opencode.jsonc
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
{
"$schema": "https://opencode.ai/config.json",
"model": "azure/gpt-5-codex",
"share": "disabled",
"theme": "ayu",
"tui": {
"scroll_speed": 4
},
"mcp": {
"github": {
"enabled": true,
"type": "remote",
"url": "https://api.githubcopilot.com/mcp/",
"headers": {
"Authorization": "Bearer {env:GH_TOKEN}"
}
},
},
"provider": {
"azure": {
"options": {
"apiKey": "{env:AZURE_OPENAI_API_KEY}"
}
},
}
}
15 changes: 15 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
.git
.gitignore
Dockerfile
Dockerfile.*
.dockerignore
vendor/
dist/
build/
node_modules/
*.log
*.log*
.env
.env*
coverage/
tmp/
2 changes: 1 addition & 1 deletion .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ indent_style = space
insert_final_newline = true
trim_trailing_whitespace = true

[*.{yml,yaml}]
[*.{yml,yaml,json,jsonc}]
tab_width = 2
indent_size = 2

Expand Down
12 changes: 0 additions & 12 deletions .github/workflows/build.yml

This file was deleted.

67 changes: 67 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
name: CI

on:
pull_request:
branches:
- main

jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- uses: actions/setup-go@v5
with:
go-version-file: "go.mod"
cache: true

- name: golangci-lint
uses: golangci/golangci-lint-action@v8
with:
version: latest
args: --timeout=5m

test-unit:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- uses: actions/setup-go@v5
with:
go-version-file: "go.mod"
cache: true

- name: Run unit tests
run: go test -race -cover -coverprofile=coverage.out ./...

test-integration:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- uses: actions/setup-go@v5
with:
go-version-file: "go.mod"
cache: true

- name: Run integration tests
run: go test -race ./tests/integration/...

build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- uses: actions/setup-go@v5
with:
go-version-file: "go.mod"
cache: true

- name: Build (snapshot)
uses: goreleaser/goreleaser-action@v6
with:
version: latest
args: build --clean --snapshot
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
54 changes: 54 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
name: Release

on:
push:
tags:
- 'v*'
workflow_dispatch:
inputs:
dry_run:
description: 'Dry run (no publish)'
required: false
default: 'false'
type: choice
options: ['false','true']

permissions:
contents: write
packages: write

jobs:
goreleaser:
runs-on: ubuntu-latest
concurrency:
group: release-${{ github.ref_name }}
cancel-in-progress: false
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Set up Go
uses: actions/setup-go@v5
with:
go-version-file: 'go.mod'
cache: true

- name: GoReleaser (dry run)
if: ${{ github.event_name == 'workflow_dispatch' && inputs.dry_run == 'true' }}
uses: goreleaser/goreleaser-action@v6
with:
version: latest
args: release --snapshot --skip-publish --clean
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: GoReleaser (release)
if: ${{ github.event_name != 'workflow_dispatch' || inputs.dry_run != 'true' }}
uses: goreleaser/goreleaser-action@v6
with:
version: latest
args: release --clean
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
12 changes: 10 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
*.out

# Dependency directories (remove the comment below to include it)
# vendor/
vendor/

# Go workspace file
go.work
Expand All @@ -27,5 +27,13 @@ go.work.sum
dist
temp
.vscode
.DS_Store
Thumbs.db
*.tmp
*.swp
.idea/

.aider*
.serena

# Added by goreleaser init:
dist/
Loading
Loading