Skip to content
This repository was archived by the owner on Mar 23, 2026. It is now read-only.
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
22 changes: 13 additions & 9 deletions .github/agents/applogger-delivery-engineer.agent.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,8 @@ Load the relevant workflow skills under `.github/skills/` based on the task:
8. Do not create a tag automatically after every merge to `main`.
9. Documentation-only work may go `dev -> main` without any tag.
10. Tag only when the merged change is release-worthy or the user explicitly wants a versioned release.
11. Do not push every micro-change; batch work locally and push only when a meaningful milestone is complete (full feature slice, completed documentation unit, or explicit checkpoint requested by the user).
12. If the change is docs-only, skip manual build/test validation and run only documentation-focused checks.

## Parallelization Strategy

Expand All @@ -47,15 +49,16 @@ Use parallel subagents only for exploration and audit. Do not parallelize writes
1. Load repo context and identify impacted areas.
2. If needed, launch parallel read-only subagent passes.
3. Complete or review code and docs changes.
4. Run local validation, including `act`-based local GitHub Actions when relevant.
5. Ensure final delivery branch is `dev`.
6. Push `dev` only after local validation passes.
7. Open and verify PR from `dev` to `main`.
8. Merge only after checks pass.
9. Decide whether the merged change is tag-eligible.
10. Only after `main` is verified and the change is tag-eligible, create and push the release tag.
11. Review open Dependabot PRs and merge only when technically sound.
12. Confirm docs and release state are current.
4. Classify the change: code, docs-only, or mixed.
5. Run local validation relevant to the changed area, including `act`-based local GitHub Actions only when workflow-sensitive.
6. Ensure final delivery branch is `dev`.
7. Push `dev` only after the current milestone is complete and validation passes.
8. Open and verify PR from `dev` to `main`.
9. Merge only after checks pass.
10. Decide whether the merged change is tag-eligible.
11. Only after `main` is verified and the change is tag-eligible, create and push the release tag.
12. Review open Dependabot PRs and merge only when technically sound.
13. Confirm docs and release state are current.

## Intent Interpretation

Expand All @@ -64,6 +67,7 @@ Interpret user requests strictly:
1. `merge dev to main` means complete integration to `main`, not release tagging.
2. `create tag`, `publish release`, or `ship version` means evaluate release-tag eligibility first.
3. If the change is docs-only, workflow-only, or internal maintenance, merge may be correct while tagging is not.
4. If the user asks to continue a larger feature (for example CLI construction), keep iterating locally and delay push/PR until the requested feature slice or milestone is complete.

## Output Format

Expand Down
26 changes: 15 additions & 11 deletions .github/skills/applogger-change-delivery/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,18 +27,21 @@ Trigger phrases include:
5. Review docs impact before push.
6. Do not assume every merged PR should become a release tag.
7. Treat merge-to-main and tag creation as separate decisions.
8. Do not push for every small edit; push when a meaningful milestone is complete (full feature slice, completed docs package, or explicit user checkpoint).
9. For docs-only changes, skip manual build/test execution and run documentation-focused checks only.

## Procedure

1. Read [completion checklist](./references/completion-checklist.md).
2. Run [local validation](./references/local-validation.md).
3. Run [local GitHub Actions validation](./references/local-actions-validation.md) when workflow-sensitive.
4. Audit docs with [documentation gate](./references/documentation-gate.md).
5. Commit only after the feature/fix/refactor is complete.
6. Push the integrated change to `dev`.
7. Open PR from `dev` to `main`.
8. Merge only after checks are green.
9. Decide whether the merged change is release-tag eligible before invoking the release flow.
2. Classify the change as code, docs-only, or mixed.
3. Run [local validation](./references/local-validation.md) using the profile that matches the change class.
4. Run [local GitHub Actions validation](./references/local-actions-validation.md) only when workflow-sensitive.
5. Audit docs with [documentation gate](./references/documentation-gate.md).
6. Commit only after the feature/fix/refactor/docs milestone is complete.
7. Push the integrated milestone to `dev`.
8. Open PR from `dev` to `main`.
9. Merge only after checks are green.
10. Decide whether the merged change is release-tag eligible before invoking the release flow.

## Parallelization Guidance

Expand All @@ -51,6 +54,7 @@ For larger changes, run read-only subagent passes in parallel before editing or
## Output Standard

1. Report local validation results.
2. Report whether docs changed or were intentionally unchanged.
3. Report push/PR status.
4. State whether the change is tag-eligible, not tag-eligible, or needs explicit release intent.
2. Report the selected validation profile (code, docs-only, or mixed).
3. Report whether docs changed or were intentionally unchanged.
4. Report push/PR status.
5. State whether the change is tag-eligible, not tag-eligible, or needs explicit release intent.
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,5 @@ Before delivery:
Commit policy:

1. Do not create the final delivery commit for partial work.
2. Use one clear commit or a clean, intentional set of commits for the completed unit.
2. Use one clear commit or a clean, intentional set of commits for the completed unit.
3. Avoid micro-commits for every small step; commit and push when a milestone is complete.
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
# Local Validation

Baseline local validation:
Choose validation by change type.

## Profile A: Code Changes (SDK or executable logic)

Run baseline local validation:

1. `cd sdk && ./gradlew check`
2. `cd sdk && ./gradlew assemble`
Expand All @@ -10,4 +14,19 @@ Push-gate validation:
1. `.githooks/pre-push` runs Detekt.
2. `.githooks/pre-push` runs `:logger-core:jvmTest` and `:logger-test:jvmTest`.

Use the exact pre-push hook when you need parity with local gatekeeping.
Use the exact pre-push hook when you need parity with local gatekeeping.

## Profile B: Docs-Only Changes

When no executable code changed, skip manual build/test runs.

Run only documentation-focused checks, for example:

1. Verify modified docs render and links are valid.
2. Verify examples and command snippets match current behavior.

If a push still triggers repository hooks or CI checks, allow them to run naturally, but do not add extra manual build/test commands.

## Profile C: Mixed Changes

Apply Profile A for code validation plus docs checks from Profile B.
67 changes: 67 additions & 0 deletions .github/skills/applogger-cli-agent-operator/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
---
name: applogger-cli-agent-operator
description: 'Operate the AppLoggers CLI as a deterministic interface for AI agents and automation. Use this when an agent must query CLI metadata, capabilities, health, and telemetry output in machine-readable form.'
argument-hint: 'Describe what automation or agent task should be executed through applogger-cli and which output contract is required.'
user-invocable: true
---

# AppLogger CLI Agent Operator

## Purpose

Use this skill when a Copilot agent or automation needs to interact with AppLoggers through the CLI contract in a stable and parseable way.

## Hard Rules

1. Prefer `--output agent` for machine consumption (TOON compact encoding via toon-go).
2. Use `--output json` when downstream systems require JSON strictly.
2. Treat exit code 0 as success, 1 as runtime failure, 2 as usage error.
3. Run `agent schema` and `capabilities` before implementing new automation assumptions.
4. Do not parse free-form text when JSON is available.

## Standard Command Set

1. Metadata discovery:
- `applogger-cli --syncbin-metadata --output json`
2. Version/build discovery:
- `applogger-cli version --output json`
3. Capability discovery:
- `applogger-cli capabilities --output agent`
4. Agent contract discovery:
- `applogger-cli agent schema --output agent`
5. Runtime readiness probe:
- `applogger-cli health --output agent`
6. Telemetry query endpoint:
- `applogger-cli telemetry query --output agent`
7. Dedicated compact orchestration response:
- `applogger-cli telemetry agent-response --source logs --aggregate severity --preview-limit 5`

## Supabase Environment Setup

Before `telemetry query`, ensure environment is configured:

1. Required:
- `APPLOGGER_SUPABASE_URL`
- `APPLOGGER_SUPABASE_KEY` (service_role key)
2. Optional:
- `APPLOGGER_SUPABASE_SCHEMA`
- `APPLOGGER_SUPABASE_LOG_TABLE`
- `APPLOGGER_SUPABASE_METRIC_TABLE`
- `APPLOGGER_SUPABASE_TIMEOUT_SECONDS`
3. If operating with Supabase MCP available, retrieve:
- project URL from `mcp_supabase_get_project_url`
4. Provision `APPLOGGER_SUPABASE_KEY` from secure secret storage (service_role).
- Do not use publishable/anon keys for CLI read operations.

## Error Handling Contract

1. If exit code is 2, the caller should correct arguments and retry.
2. If exit code is 1, treat as runtime error and escalate with captured stderr JSON envelope.
3. Always store command, args, exit code, and full JSON response in agent logs for traceability.

## Output Standard

1. Report executed commands.
2. Report parsed JSON fields used for decisions.
3. Report retries and final status.
4. Report remaining uncertainty if command is preview status.
8 changes: 8 additions & 0 deletions .github/skills/syncbin-child-cli-architect/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,14 @@
## Purpose
This skill enables AI agents to architect and build COMPLETE, production-ready Child CLIs for the Syncbin ecosystem from scratch. The agent will master the full lifecycle: requirements analysis, architecture design, implementation following Syncbin standards, testing, documentation, OCI packaging, and marketplace publishing. This is the comprehensive skill for creating professional-grade CLI tools.

## AppLoggers Delivery Cadence

When this skill is used inside the AppLoggers repository:

1. Do not push every incremental step while building the CLI.
2. Push only after a complete CLI milestone is closed (for example: foundation complete, telemetry query module complete, installer module complete).
3. If the milestone is docs-only, do not run manual build/test commands before push.

## Core Concepts

### 1. The Syncbin Child CLI Standard
Expand Down
Loading
Loading