Skip to content
Merged
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
1 change: 0 additions & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -289,7 +289,6 @@ Releases are fully automated. When a PR is merged to `main`:
1. The CI workflow detects which modules changed since their last tag
2. Commit messages are analyzed to determine the version bump (major/minor/patch)
3. Per-module semver tags are created (e.g., `gcp-auth/v1.2.3`)
4. A common CalVer release is created (e.g., `v2026.2.0`)

You do **not** need to manually bump versions or create tags.

Expand Down
11 changes: 2 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -305,7 +305,7 @@ Tests run automatically on push to `main`, pull requests, and manual dispatch vi
| `test-modules` | Matrix job — tests each non-agent module in parallel. GCP modules (`gcp-*`) receive OIDC credentials automatically |
| `test-agents` | Matrix job — tests each agent entrypoint in parallel (e.g. `angie-assist`, `goose-deploy`). Agents with `.agent-gcp` marker receive OIDC credentials |
| `test-angie-github-issue` | Dedicated job for `develop-github-issue` end-to-end test (creates a PR, then cleans it up) |
| `release` | Runs on `main` only — tags changed modules with semver (via Conventional Commits) and creates a CalVer release |
| `release` | Runs on `main` only — tags changed modules with semver (via Conventional Commits) |

### Validation Pipeline

Expand Down Expand Up @@ -333,20 +333,13 @@ gcp-auth/v1.2.3
health-check/v0.5.0
```

Additionally, a common **CalVer release** (`vYYYY.MM.MICRO`) is created on each push to main to reference the whole set of modules as a coherent version:

```
v2026.2.0 <- first release of February 2026
v2026.2.1 <- second release of February 2026
```

### Automatic Releases

The **Release Modules** workflow runs on every push to main and:
- Detects which modules have changes since their last tag
- Analyzes commit messages using [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/#summary)
- Automatically determines version bump (major/minor/patch)
- Creates per-module semver tags and a common CalVer release
- Creates per-module semver tags

Commit message format:

Expand Down
4 changes: 3 additions & 1 deletion angie/src/angie/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
"""Angie — AI-powered Angular development agent with MCP integration."""
"""
Angie — AI-powered Angular development agent with MCP integration.
"""

from .main import Angie

Expand Down
4 changes: 3 additions & 1 deletion angular/src/angular/__init__.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
"""Angular build, lint, test, and serve utilities for Dagger pipelines."""
"""
Angular build, lint, test, and serve utilities for Dagger pipelines.
"""

from .main import Angular as Angular
3 changes: 2 additions & 1 deletion calver/src/calver/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
"""Calendar Versioning (CalVer) utilities for generating date-based version strings in Dagger pipelines.
"""
Calendar Versioning (CalVer) utilities for generating date-based version strings in Dagger pipelines.

Supports configurable date formats (YYYY.MM.DD, v.YYYY.MM.MICRO, etc.), automatic micro version
incrementing from git tags, and optional tag pushing to remote repositories.
Expand Down
3 changes: 2 additions & 1 deletion dagger-mcp/src/dagger_mcp/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
"""MCP server for Dagger engine introspection — learn schema, run GraphQL queries, and get SDK guidance.
"""
MCP server for Dagger engine introspection — learn schema, run GraphQL queries, and get SDK guidance.

Provides a Model Context Protocol (MCP) server that enables AI agents to explore the Dagger API schema,
execute GraphQL queries against the live engine, and translate patterns into SDK-specific code.
Expand Down
4 changes: 3 additions & 1 deletion daggie/src/daggie/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
"""Daggie — AI-powered Dagger CI specialist agent."""
"""
Daggie — AI-powered Dagger CI specialist agent.
"""

from .main import Daggie

Expand Down
11 changes: 11 additions & 0 deletions daggie/src/daggie/prompts/system_prompt.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,17 @@ The **module description shown on daggerverse.dev** comes from the source code,

The `description` field in `dagger.json` is used locally by `dagger functions` but is **not** what the Daggerverse displays. If the `__init__.py` still has the default `dagger init` boilerplate ("A generated module for..."), that boilerplate is what appears on daggerverse.dev. Always replace it with a meaningful description.

**IMPORTANT (Python SDK):** The description text must start on the line AFTER the opening `"""`, not on the same line. The Dagger Python SDK skips the first line if it shares the line with the triple-quote delimiter:
```python
# GOOD — description is visible on daggerverse.dev
"""
My module description here.
"""

# BAD — first line gets skipped on daggerverse.dev
"""My module description here."""
```

### Key Concepts
- **Functions** — exported methods on the main class, exposed as CLI commands
- **Container API** — `dag.container().from_()`, `.with_exec()`, `.with_mounted_directory()`, `.with_env_variable()`
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
"""Google Cloud Artifact Registry operations for publishing and managing container images.
"""
Google Cloud Artifact Registry operations for publishing and managing container images.

Provides functions for authenticating with Artifact Registry, publishing container images,
and managing repository access in Dagger pipelines.
Expand Down
3 changes: 2 additions & 1 deletion gcp-auth/src/gcp_auth/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
"""GCP authentication utilities for Dagger pipelines using service accounts and OIDC.
"""
GCP authentication utilities for Dagger pipelines using service accounts and OIDC.

Provides container authentication via service account JSON keys, OIDC/Workload Identity Federation,
Application Default Credentials (ADC), and access token generation for Google Cloud services.
Expand Down
3 changes: 2 additions & 1 deletion gcp-cloud-run/src/gcp_cloud_run/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
"""Google Cloud Run deployment utilities for services and jobs in Dagger pipelines.
"""
Google Cloud Run deployment utilities for services and jobs in Dagger pipelines.

Provides functions for deploying Cloud Run services and jobs, managing revisions,
streaming logs, and checking deployment status with built-in health verification.
Expand Down
3 changes: 2 additions & 1 deletion gcp-firebase/src/gcp_firebase/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
"""GCP Firebase - Dagger module for Firebase Hosting and Firestore management.
"""
GCP Firebase - Dagger module for Firebase Hosting and Firestore management.

This module provides utilities for:
- Firebase Hosting: Build and deploy web applications, preview channels
Expand Down
3 changes: 2 additions & 1 deletion gcp-vertex-ai/src/gcp_vertex_ai/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
"""Google Cloud Vertex AI operations for deploying and managing ML models in Dagger pipelines.
"""
Google Cloud Vertex AI operations for deploying and managing ML models in Dagger pipelines.

Provides functions for uploading models, creating endpoints, deploying model versions,
and running predictions against Vertex AI services.
Expand Down
4 changes: 3 additions & 1 deletion goose/src/goose/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
"""Goose — AI-powered GCP deployment, troubleshooting, and operations agent."""
"""
Goose — AI-powered GCP deployment, troubleshooting, and operations agent.
"""

from .main import Goose

Expand Down
3 changes: 2 additions & 1 deletion health-check/src/health_check/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
"""Simple, reusable container health checking for Dagger.
"""
Simple, reusable container health checking for Dagger.

This module provides health checking utilities for containers using Dagger's
service binding features. Supports HTTP, TCP, and custom exec-based health checks.
Expand Down
4 changes: 3 additions & 1 deletion monty/src/monty/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
"""Monty — AI-powered Python development agent with MCP integration."""
"""
Monty — AI-powered Python development agent with MCP integration.
"""

from .main import Monty

Expand Down
3 changes: 2 additions & 1 deletion oidc-token/src/oidc_token/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
"""Universal OIDC token handling for CI/CD providers.
"""
Universal OIDC token handling for CI/CD providers.

This module provides functions to obtain OIDC JWT tokens from various CI/CD
providers (GitHub Actions, GitLab CI, CircleCI). These tokens can then be
Expand Down
4 changes: 3 additions & 1 deletion python-build/src/python_build/__init__.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
"""Python build, lint, test, and typecheck utilities for Dagger pipelines."""
"""
Python build, lint, test, and typecheck utilities for Dagger pipelines.
"""

from .main import PythonBuild as PythonBuild
4 changes: 3 additions & 1 deletion semver/src/semver/__init__.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
"""Semantic Versioning utilities with Conventional Commits support."""
"""
Semantic Versioning utilities with Conventional Commits support.
"""

from .main import Semver as Semver
Loading