diff --git a/pkg/i18n/i18n_test.go b/pkg/i18n/i18n_test.go
index e37db71..772e701 100644
--- a/pkg/i18n/i18n_test.go
+++ b/pkg/i18n/i18n_test.go
@@ -23,8 +23,8 @@ func TestTranslate(t *testing.T) {
require.NoError(t, err)
// Basic translation
- result := svc.T("cli.success")
- assert.Equal(t, "Success", result)
+ result := svc.T("cmd.dev.short")
+ assert.Equal(t, "Multi-repo development workflow", result)
// Missing key returns the key
result = svc.T("nonexistent.key")
@@ -36,11 +36,11 @@ func TestTranslateWithArgs(t *testing.T) {
require.NoError(t, err)
// Translation with template data
- result := svc.T("error.not_found", map[string]string{"Item": "config.yaml"})
- assert.Equal(t, "Not found: config.yaml", result)
+ result := svc.T("error.repo_not_found", map[string]string{"Name": "config.yaml"})
+ assert.Equal(t, "Repository 'config.yaml' not found", result)
- result = svc.T("cli.time.minutes_ago", map[string]int{"Count": 5})
- assert.Equal(t, "5 minutes ago", result)
+ result = svc.T("cmd.ai.task_pr.branch_error", map[string]string{"Branch": "main"})
+ assert.Equal(t, "cannot create PR from main branch; create a feature branch first", result)
}
func TestSetLanguage(t *testing.T) {
@@ -71,8 +71,8 @@ func TestDefaultService(t *testing.T) {
require.NotNil(t, svc)
// Global T function should work
- result := T("cli.success")
- assert.Equal(t, "Success", result)
+ result := T("cmd.dev.short")
+ assert.Equal(t, "Multi-repo development workflow", result)
}
func TestAddMessages(t *testing.T) {
@@ -138,17 +138,18 @@ func TestDetectLanguage(t *testing.T) {
func TestPluralization(t *testing.T) {
svc, err := New()
require.NoError(t, err)
+ SetDefault(svc)
- // Singular
- result := svc.T("cli.count.items", map[string]any{"Count": 1})
+ // Singular - uses core.count.* magic
+ result := svc.T("core.count.item", 1)
assert.Equal(t, "1 item", result)
// Plural
- result = svc.T("cli.count.items", map[string]any{"Count": 5})
+ result = svc.T("core.count.item", 5)
assert.Equal(t, "5 items", result)
// Zero uses plural
- result = svc.T("cli.count.items", map[string]any{"Count": 0})
+ result = svc.T("core.count.item", 0)
assert.Equal(t, "0 items", result)
}
@@ -156,13 +157,13 @@ func TestNestedKeys(t *testing.T) {
svc, err := New()
require.NoError(t, err)
- // Deeply nested key
- result := svc.T("cmd.dev.work.short")
- assert.Equal(t, "Multi-repo git operations", result)
+ // Nested key
+ result := svc.T("cmd.dev.short")
+ assert.Equal(t, "Multi-repo development workflow", result)
- // Nested with flag
- result = svc.T("cmd.dev.work.flag.status")
- assert.Equal(t, "Show status only, don't push", result)
+ // Deeper nested key (flat key with dots)
+ result = svc.T("cmd.dev.push.short")
+ assert.Equal(t, "Push commits across all repos", result)
}
func TestMessage_ForCategory(t *testing.T) {
@@ -260,21 +261,21 @@ func TestDebugMode(t *testing.T) {
require.NoError(t, err)
// Without debug
- result := svc.T("cli.success")
- assert.Equal(t, "Success", result)
+ result := svc.T("cmd.dev.short")
+ assert.Equal(t, "Multi-repo development workflow", result)
// Enable debug
svc.SetDebug(true)
assert.True(t, svc.Debug())
// With debug - shows key prefix
- result = svc.T("cli.success")
- assert.Equal(t, "[cli.success] Success", result)
+ result = svc.T("cmd.dev.short")
+ assert.Equal(t, "[cmd.dev.short] Multi-repo development workflow", result)
// Disable debug
svc.SetDebug(false)
- result = svc.T("cli.success")
- assert.Equal(t, "Success", result)
+ result = svc.T("cmd.dev.short")
+ assert.Equal(t, "Multi-repo development workflow", result)
})
t.Run("C with debug mode", func(t *testing.T) {
@@ -311,8 +312,8 @@ func TestDebugMode(t *testing.T) {
assert.True(t, Default().Debug())
// Translate
- result := T("cli.success")
- assert.Equal(t, "[cli.success] Success", result)
+ result := T("cmd.dev.short")
+ assert.Equal(t, "[cmd.dev.short] Multi-repo development workflow", result)
// Cleanup
SetDebug(false)
diff --git a/pkg/i18n/intents_test.go b/pkg/i18n/intents_test.go
index 00bc671..2e6d8da 100644
--- a/pkg/i18n/intents_test.go
+++ b/pkg/i18n/intents_test.go
@@ -270,8 +270,8 @@ func TestIntentT_Integration(t *testing.T) {
assert.Equal(t, "Delete config.yaml?", result)
// Using T with regular key should work normally
- result = svc.T("cli.success")
- assert.Equal(t, "Success", result)
+ result = svc.T("cmd.dev.short")
+ assert.Equal(t, "Multi-repo development workflow", result)
}
func TestIntent_EmptyTemplates(t *testing.T) {
diff --git a/pkg/i18n/interface_test.go b/pkg/i18n/interface_test.go
index 8647da7..700ccf9 100644
--- a/pkg/i18n/interface_test.go
+++ b/pkg/i18n/interface_test.go
@@ -19,7 +19,7 @@ func TestServiceImplementsTranslator(t *testing.T) {
translator = svc
// Test interface methods
- assert.Equal(t, "Success", translator.T("cli.success"))
+ assert.Equal(t, "Multi-repo development workflow", translator.T("cmd.dev.short"))
assert.NotEmpty(t, translator.Language())
assert.NotNil(t, translator.Direction())
assert.NotNil(t, translator.Formality())
diff --git a/pkg/i18n/locales/de.json b/pkg/i18n/locales/de.json
index ddcb536..731ae36 100644
--- a/pkg/i18n/locales/de.json
+++ b/pkg/i18n/locales/de.json
@@ -1,120 +1,64 @@
{
- "gram.verb.delete": { "base": "löschen", "past": "gelöscht", "gerund": "löschend" },
- "gram.verb.save": { "base": "speichern", "past": "gespeichert", "gerund": "speichernd" },
- "gram.verb.create": { "base": "erstellen", "past": "erstellt", "gerund": "erstellend" },
- "gram.verb.update": { "base": "aktualisieren", "past": "aktualisiert", "gerund": "aktualisierend" },
- "gram.verb.build": { "base": "bauen", "past": "gebaut", "gerund": "bauend" },
- "gram.verb.run": { "base": "laufen", "past": "gelaufen", "gerund": "laufend" },
- "gram.verb.check": { "base": "prüfen", "past": "geprüft", "gerund": "prüfend" },
- "gram.verb.install": { "base": "installieren", "past": "installiert", "gerund": "installierend" },
- "gram.verb.push": { "base": "pushen", "past": "gepusht", "gerund": "pushend" },
- "gram.verb.pull": { "base": "pullen", "past": "gepullt", "gerund": "pullend" },
- "gram.verb.commit": { "base": "committen", "past": "committet", "gerund": "committend" },
-
- "gram.noun.file": { "one": "Datei", "other": "Dateien", "gender": "feminine" },
- "gram.noun.repo": { "one": "Repository", "other": "Repositories", "gender": "neuter" },
- "gram.noun.commit": { "one": "Commit", "other": "Commits", "gender": "masculine" },
- "gram.noun.branch": { "one": "Branch", "other": "Branches", "gender": "masculine" },
- "gram.noun.change": { "one": "Änderung", "other": "Änderungen", "gender": "feminine" },
- "gram.noun.item": { "one": "Element", "other": "Elemente", "gender": "neuter" },
-
- "gram.article.indefinite.masculine": "ein",
- "gram.article.indefinite.feminine": "eine",
- "gram.article.indefinite.neuter": "ein",
- "gram.article.definite.masculine": "der",
- "gram.article.definite.feminine": "die",
- "gram.article.definite.neuter": "das",
-
- "cli.success": "Erfolg",
- "cli.error": "Fehler",
- "cli.warning": "Warnung",
- "cli.info": "Info",
- "cli.done": "Fertig",
- "cli.failed": "Fehlgeschlagen",
- "cli.pass": "BESTANDEN",
- "cli.fail": "FEHLGESCHLAGEN",
- "cli.ok": "OK",
- "cli.skip": "Übersprungen",
- "cli.pending": "Ausstehend",
- "cli.running": "Läuft",
- "cli.completed": "Abgeschlossen",
- "cli.cancelled": "Abgebrochen",
- "cli.aborted": "Abgebrochen",
-
- "cli.confirm.yes": "Ja",
- "cli.confirm.no": "Nein",
- "cli.confirm.proceed": "Fortfahren?",
- "cli.confirm.continue": "Weiter?",
- "cli.confirm.abort": "Vorgang abgebrochen",
-
- "cli.progress.checking": "Prüfe",
- "cli.progress.fetching": "Lade",
- "cli.progress.loading": "Lade",
- "cli.progress.processing": "Verarbeite",
- "cli.progress.installing": "Installiere",
- "cli.progress.building": "Baue",
- "cli.progress.deploying": "Deploye",
- "cli.progress.testing": "Teste",
-
- "cli.time.just_now": "gerade eben",
- "cli.time.seconds_ago": "vor {{.Count}} Sekunden",
- "cli.time.minute_ago": "vor 1 Minute",
- "cli.time.minutes_ago": "vor {{.Count}} Minuten",
- "cli.time.hour_ago": "vor 1 Stunde",
- "cli.time.hours_ago": "vor {{.Count}} Stunden",
- "cli.time.day_ago": "vor 1 Tag",
- "cli.time.days_ago": "vor {{.Count}} Tagen",
- "cli.time.week_ago": "vor 1 Woche",
- "cli.time.weeks_ago": "vor {{.Count}} Wochen",
-
- "cli.count.items": {
- "one": "{{.Count}} Element",
- "other": "{{.Count}} Elemente"
+ "gram": {
+ "verb": {
+ "delete": { "base": "löschen", "past": "gelöscht", "gerund": "löschend" },
+ "save": { "base": "speichern", "past": "gespeichert", "gerund": "speichernd" },
+ "create": { "base": "erstellen", "past": "erstellt", "gerund": "erstellend" },
+ "update": { "base": "aktualisieren", "past": "aktualisiert", "gerund": "aktualisierend" },
+ "build": { "base": "bauen", "past": "gebaut", "gerund": "bauend" },
+ "run": { "base": "laufen", "past": "gelaufen", "gerund": "laufend" },
+ "check": { "base": "prüfen", "past": "geprüft", "gerund": "prüfend" },
+ "install": { "base": "installieren", "past": "installiert", "gerund": "installierend" },
+ "push": { "base": "pushen", "past": "gepusht", "gerund": "pushend" },
+ "pull": { "base": "pullen", "past": "gepullt", "gerund": "pullend" },
+ "commit": { "base": "committen", "past": "committet", "gerund": "committend" }
+ },
+ "noun": {
+ "file": { "one": "Datei", "other": "Dateien", "gender": "feminine" },
+ "repo": { "one": "Repository", "other": "Repositories", "gender": "neuter" },
+ "commit": { "one": "Commit", "other": "Commits", "gender": "masculine" },
+ "branch": { "one": "Branch", "other": "Branches", "gender": "masculine" },
+ "change": { "one": "Änderung", "other": "Änderungen", "gender": "feminine" },
+ "item": { "one": "Element", "other": "Elemente", "gender": "neuter" }
+ },
+ "article": {
+ "indefinite": { "masculine": "ein", "feminine": "eine", "neuter": "ein" },
+ "definite": { "masculine": "der", "feminine": "die", "neuter": "das" }
+ },
+ "punct": {
+ "label": ":",
+ "progress": "..."
+ }
},
- "cli.count.files": {
- "one": "{{.Count}} Datei",
- "other": "{{.Count}} Dateien"
+ "prompt": {
+ "yes": "j",
+ "no": "n",
+ "continue": "Weiter?",
+ "proceed": "Fortfahren?",
+ "confirm": "Sind Sie sicher?"
},
- "cli.count.repos": {
- "one": "{{.Count}} Repository",
- "other": "{{.Count}} Repositories"
+ "time": {
+ "just_now": "gerade eben",
+ "ago": {
+ "second": { "one": "vor {{.Count}} Sekunde", "other": "vor {{.Count}} Sekunden" },
+ "minute": { "one": "vor {{.Count}} Minute", "other": "vor {{.Count}} Minuten" },
+ "hour": { "one": "vor {{.Count}} Stunde", "other": "vor {{.Count}} Stunden" },
+ "day": { "one": "vor {{.Count}} Tag", "other": "vor {{.Count}} Tagen" },
+ "week": { "one": "vor {{.Count}} Woche", "other": "vor {{.Count}} Wochen" }
+ }
},
- "cli.count.commits": {
- "one": "{{.Count}} Commit",
- "other": "{{.Count}} Commits"
+ "cmd": {
+ "dev.short": "Multi-Repository-Entwicklung",
+ "doctor.short": "Entwicklungsumgebung prüfen"
},
-
- "cmd.dev.short": "Multi-Repository-Entwicklung",
- "cmd.dev.status.dirty": "geändert",
- "cmd.dev.status.clean": "sauber",
- "cmd.dev.status.ahead": "voraus",
- "cmd.dev.status.behind": "zurück",
- "cmd.dev.status.synced": "synchronisiert",
-
- "cmd.dev.push.confirm": "Alle pushen?",
- "cmd.dev.commit.committing": "Committe geänderte Repos mit Claude...",
-
- "cmd.doctor.short": "Entwicklungsumgebung prüfen",
- "cmd.doctor.checking": "Prüfe Entwicklungsumgebung...",
- "cmd.doctor.required": "Erforderlich",
- "cmd.doctor.optional": "Optional",
- "cmd.doctor.ready": "Umgebung bereit",
-
- "error.not_found": "Nicht gefunden: {{.Item}}",
- "error.invalid": "Ungültig: {{.Item}}",
- "error.permission": "Zugriff verweigert: {{.Item}}",
- "error.timeout": "Zeitüberschreitung",
- "error.gh_not_found": "'gh' CLI nicht gefunden. Installieren von https://cli.github.com/",
-
- "label.status": "Status",
- "label.branch": "Branch",
- "label.commit": "Commit",
- "label.coverage": "Abdeckung",
- "label.total": "Gesamt",
-
- "lang.en": "Englisch",
- "lang.de": "Deutsch",
- "lang.es": "Spanisch",
- "lang.fr": "Französisch",
- "lang.zh": "Chinesisch"
+ "error": {
+ "gh_not_found": "'gh' CLI nicht gefunden. Installieren von https://cli.github.com/"
+ },
+ "lang": {
+ "de": "Deutsch",
+ "en": "Englisch",
+ "es": "Spanisch",
+ "fr": "Französisch",
+ "zh": "Chinesisch"
+ }
}
diff --git a/pkg/i18n/locales/en_AU.json b/pkg/i18n/locales/en_AU.json
index b4ae017..2c63c08 100644
--- a/pkg/i18n/locales/en_AU.json
+++ b/pkg/i18n/locales/en_AU.json
@@ -1,1355 +1,2 @@
{
- "cli.success": "Success",
- "cli.error": "Error",
- "cli.warning": "Warning",
- "cli.info": "Info",
- "cli.done": "Done",
- "cli.failed": "Failed",
- "cli.pass": "PASS",
- "cli.fail": "FAIL",
- "cli.ok": "OK",
- "cli.skip": "Skipped",
- "cli.pending": "Pending",
- "cli.running": "Running",
- "cli.completed": "Completed",
- "cli.cancelled": "Cancelled",
- "cli.aborted": "Aborted",
-
- "cli.confirm.yes": "Yes",
- "cli.confirm.no": "No",
- "cli.confirm.proceed": "Proceed?",
- "cli.confirm.continue": "Continue?",
- "cli.confirm.abort": "Operation aborted",
-
- "cli.progress.checking": "Checking",
- "cli.progress.fetching": "Fetching",
- "cli.progress.loading": "Loading",
- "cli.progress.processing": "Processing",
- "cli.progress.installing": "Installing",
- "cli.progress.building": "Building",
- "cli.progress.deploying": "Deploying",
- "cli.progress.testing": "Testing",
-
- "cli.time.just_now": "just now",
- "cli.time.seconds_ago": "{{.Count}} seconds ago",
- "cli.time.minute_ago": "1 minute ago",
- "cli.time.minutes_ago": "{{.Count}} minutes ago",
- "cli.time.hour_ago": "1 hour ago",
- "cli.time.hours_ago": "{{.Count}} hours ago",
- "cli.time.day_ago": "1 day ago",
- "cli.time.days_ago": "{{.Count}} days ago",
- "cli.time.week_ago": "1 week ago",
- "cli.time.weeks_ago": "{{.Count}} weeks ago",
-
- "cli.count.items": {
- "one": "{{.Count}} item",
- "other": "{{.Count}} items"
- },
- "cli.count.files": {
- "one": "{{.Count}} file",
- "other": "{{.Count}} files"
- },
- "cli.count.repos": {
- "one": "{{.Count}} repo",
- "other": "{{.Count}} repos"
- },
- "cli.count.commits": {
- "one": "{{.Count}} commit",
- "other": "{{.Count}} commits"
- },
-
- "cmd.dev.short": "Multi-repo development workflow",
- "cmd.dev.long": "Manage multiple git repositories and GitHub integration.\n\nUses repos.yaml to discover repositories. Falls back to scanning\nthe current directory if no registry is found.\n\nGit Operations:\n work Combined status -> commit -> push workflow\n health Quick repo health summary\n commit Claude-assisted commit messages\n push Push repos with unpushed commits\n pull Pull repos behind remote\n\nGitHub Integration (requires gh CLI):\n issues List open issues across repos\n reviews List PRs awaiting review\n ci Check GitHub Actions status\n impact Analyse dependency impact\n\nDev Environment:\n install Download dev environment image\n boot Start dev environment VM\n stop Stop dev environment VM\n shell Open shell in dev VM\n status Check dev VM status",
-
- "cmd.dev.work.short": "Multi-repo git operations",
- "cmd.dev.work.long": "Manage git status, commits, and pushes across multiple repositories.\n\nReads repos.yaml to discover repositories and their relationships.\nShows status, optionally commits with Claude, and pushes changes.",
- "cmd.dev.work.flag.status": "Show status only, don't push",
- "cmd.dev.work.flag.commit": "Use Claude to commit dirty repos before pushing",
- "cmd.dev.work.flag.registry": "Path to repos.yaml (auto-detected if not specified)",
-
- "cmd.dev.health.short": "Quick health check across all repos",
- "cmd.dev.health.long": "Shows a summary of repository health:\ntotal repos, dirty repos, unpushed commits, etc.",
- "cmd.dev.health.flag.registry": "Path to repos.yaml (auto-detected if not specified)",
- "cmd.dev.health.flag.verbose": "Show detailed breakdown",
-
- "cmd.dev.commit.short": "Claude-assisted commits across repos",
- "cmd.dev.commit.long": "Uses Claude to create commits for dirty repos.\nShows uncommitted changes and invokes Claude to generate commit messages.",
- "cmd.dev.commit.flag.registry": "Path to repos.yaml (auto-detected if not specified)",
- "cmd.dev.commit.flag.all": "Commit all dirty repos without prompting",
-
- "cmd.dev.push.short": "Push commits across all repos",
- "cmd.dev.push.long": "Pushes unpushed commits for all repos.\nShows repos with commits to push and confirms before pushing.",
- "cmd.dev.push.flag.registry": "Path to repos.yaml (auto-detected if not specified)",
- "cmd.dev.push.flag.force": "Skip confirmation prompt",
-
- "cmd.dev.pull.short": "Pull updates across all repos",
- "cmd.dev.pull.long": "Pulls updates for all repos.\nBy default only pulls repos that are behind. Use --all to pull all repos.",
- "cmd.dev.pull.flag.registry": "Path to repos.yaml (auto-detected if not specified)",
- "cmd.dev.pull.flag.all": "Pull all repos, not just those behind",
-
- "cmd.dev.issues.short": "List open issues across all repos",
- "cmd.dev.issues.long": "Fetches open issues from GitHub for all repos in the registry.\nRequires the 'gh' CLI to be installed and authenticated.",
- "cmd.dev.issues.flag.registry": "Path to repos.yaml (auto-detected if not specified)",
- "cmd.dev.issues.flag.limit": "Max issues per repo",
- "cmd.dev.issues.flag.assignee": "Filter by assignee (use @me for yourself)",
-
- "cmd.dev.reviews.short": "List PRs needing review across all repos",
- "cmd.dev.reviews.long": "Fetches open PRs from GitHub for all repos in the registry.\nShows review status (approved, changes requested, pending).\nRequires the 'gh' CLI to be installed and authenticated.",
- "cmd.dev.reviews.flag.registry": "Path to repos.yaml (auto-detected if not specified)",
- "cmd.dev.reviews.flag.author": "Filter by PR author",
- "cmd.dev.reviews.flag.all": "Show all PRs including drafts",
-
- "cmd.dev.ci.short": "Check CI status across all repos",
- "cmd.dev.ci.long": "Fetches GitHub Actions workflow status for all repos.\nShows latest run status for each repo.\nRequires the 'gh' CLI to be installed and authenticated.",
- "cmd.dev.ci.flag.registry": "Path to repos.yaml (auto-detected if not specified)",
- "cmd.dev.ci.flag.branch": "Filter by branch",
- "cmd.dev.ci.flag.failed": "Show only failed runs",
-
- "cmd.dev.impact.short": "Show impact of changing a repo",
- "cmd.dev.impact.long": "Analyzes the dependency graph to show which repos\nwould be affected by changes to the specified repo.",
- "cmd.dev.impact.flag.registry": "Path to repos.yaml (auto-detected if not specified)",
-
- "cmd.dev.api.short": "Tools for managing service APIs",
- "cmd.dev.sync.short": "Synchronizes public service APIs with internal implementations",
- "cmd.dev.sync.long": "This command scans the 'pkg' directory for services and ensures that the\ntop-level public API for each service is in sync with its internal implementation.\nIt automatically generates the necessary Go files with type aliases.",
-
- "cmd.dev.vm.install.short": "Download and install the dev environment image",
- "cmd.dev.vm.install.long": "Downloads the platform-specific dev environment image.\n\nThe image includes Go, PHP, Node.js, Python, Docker, and Claude CLI.\nDownloads are cached at ~/.core/images/\n\nExamples:\n core dev install",
-
- "cmd.dev.vm.boot.short": "Start the dev environment",
- "cmd.dev.vm.boot.long": "Boots the dev environment VM.\n\nExamples:\n core dev boot\n core dev boot --memory 8192 --cpus 4\n core dev boot --fresh",
- "cmd.dev.vm.boot.flag.memory": "Memory in MB (default: 4096)",
- "cmd.dev.vm.boot.flag.cpus": "Number of CPUs (default: 2)",
- "cmd.dev.vm.boot.flag.fresh": "Stop existing and start fresh",
-
- "cmd.dev.vm.stop.short": "Stop the dev environment",
- "cmd.dev.vm.stop.long": "Stops the running dev environment VM.\n\nExamples:\n core dev stop",
-
- "cmd.dev.vm.status.short": "Show dev environment status",
- "cmd.dev.vm.status.long": "Shows the current status of the dev environment.\n\nExamples:\n core dev vm-status",
-
- "cmd.dev.vm.shell.short": "Connect to the dev environment",
- "cmd.dev.vm.shell.long": "Opens an interactive shell in the dev environment.\n\nUses SSH by default, or serial console with --console.\n\nExamples:\n core dev shell\n core dev shell --console\n core dev shell -- ls -la",
- "cmd.dev.vm.shell.flag.console": "Use serial console instead of SSH",
-
- "cmd.dev.vm.serve.short": "Mount project and start dev server",
- "cmd.dev.vm.serve.long": "Mounts the current project into the dev environment and starts a dev server.\n\nAuto-detects the appropriate serve command based on project files.\n\nExamples:\n core dev serve\n core dev serve --port 3000\n core dev serve --path public",
- "cmd.dev.vm.serve.flag.port": "Port to serve on (default: 8000)",
- "cmd.dev.vm.serve.flag.path": "Subdirectory to serve",
-
- "cmd.dev.vm.test.short": "Run tests in the dev environment",
- "cmd.dev.vm.test.long": "Runs tests in the dev environment.\n\nAuto-detects the test command based on project files, or uses .core/test.yaml.\n\nExamples:\n core dev test\n core dev test --name integration\n core dev test -- go test -v ./...",
- "cmd.dev.vm.test.flag.name": "Run named test command from .core/test.yaml",
-
- "cmd.dev.vm.claude.short": "Start sandboxed Claude session",
- "cmd.dev.vm.claude.long": "Starts a Claude Code session inside the dev environment sandbox.\n\nProvides isolation while forwarding selected credentials.\nAuto-boots the dev environment if not running.\n\nAuth options (default: all):\n gh - GitHub CLI auth\n anthropic - Anthropic API key\n ssh - SSH agent forwarding\n git - Git config (name, email)\n\nExamples:\n core dev claude\n core dev claude --model opus\n core dev claude --auth gh,anthropic\n core dev claude --no-auth",
- "cmd.dev.vm.claude.flag.no_auth": "Don't forward any auth credentials",
- "cmd.dev.vm.claude.flag.model": "Model to use (opus, sonnet)",
- "cmd.dev.vm.claude.flag.auth": "Selective auth forwarding (gh,anthropic,ssh,git)",
-
- "cmd.dev.vm.update.short": "Check for and apply updates",
- "cmd.dev.vm.update.long": "Checks for dev environment updates and optionally applies them.\n\nExamples:\n core dev update\n core dev update --apply",
- "cmd.dev.vm.update.flag.apply": "Download and apply the update",
-
- "cmd.dev.status.dirty": "dirty",
- "cmd.dev.status.clean": "clean",
- "cmd.dev.status.ahead": "ahead",
- "cmd.dev.status.behind": "behind",
- "cmd.dev.status.synced": "synced",
- "cmd.dev.status.diverged": "diverged",
- "cmd.dev.status.conflict": "conflict",
-
- "cmd.dev.push.confirm": "Push all?",
- "cmd.dev.push.success": "Pushed successfully",
- "cmd.dev.push.failed": "Push failed",
- "cmd.dev.push.nothing": "Nothing to push",
-
- "cmd.dev.commit.committing": "Committing dirty repos with Claude...",
- "cmd.dev.commit.success": "Committed successfully",
- "cmd.dev.commit.failed": "Commit failed",
-
- "cmd.dev.registry_label": "Registry:",
- "cmd.dev.scanning_label": "Scanning:",
- "cmd.dev.no_git_repos": "No git repositories found.",
- "cmd.dev.no_changes": "No uncommitted changes found.",
- "cmd.dev.repos_with_changes": "{{.Count}} repo(s) with uncommitted changes:",
- "cmd.dev.modified": "{{.Count}} modified",
- "cmd.dev.untracked": "{{.Count}} untracked",
- "cmd.dev.staged": "{{.Count}} staged",
- "cmd.dev.confirm_claude_commit": "Have Claude commit these repos?",
- "cmd.dev.committing": "Committing",
- "cmd.dev.committed": "committed",
- "cmd.dev.done_succeeded": "Done: {{.Count}} succeeded",
- "cmd.dev.count_failed": "{{.Count}} failed",
-
- "cmd.dev.push.all_up_to_date": "All repos up to date. Nothing to push.",
- "cmd.dev.push.repos_with_unpushed": "{{.Count}} repo(s) with unpushed commits:",
- "cmd.dev.push.commits_count": "{{.Count}} commit(s)",
- "cmd.dev.push.confirm_push": "Push {{.Commits}} commit(s) to {{.Repos}} repo(s)?",
- "cmd.dev.push.done_pushed": "Done: {{.Count}} pushed",
- "cmd.dev.push.diverged": "branch has diverged from remote",
- "cmd.dev.push.diverged_help": "Some repos have diverged (local and remote have different commits).",
- "cmd.dev.push.pull_and_retry": "Pull changes and retry push?",
-
- "cmd.dev.pull.all_up_to_date": "All repos up to date. Nothing to pull.",
- "cmd.dev.pull.pulling_repos": "Pulling {{.Count}} repo(s):",
- "cmd.dev.pull.repos_behind": "{{.Count}} repo(s) behind upstream:",
- "cmd.dev.pull.commits_behind": "{{.Count}} commit(s) behind",
- "cmd.dev.pull.pulling": "Pulling",
- "cmd.dev.pull.done_pulled": "Done: {{.Count}} pulled",
-
- "cmd.dev.health.dirty_label": "Dirty:",
- "cmd.dev.health.ahead_label": "Ahead:",
- "cmd.dev.health.behind_label": "Behind:",
- "cmd.dev.health.errors_label": "Errors:",
- "cmd.dev.health.repos": "repos",
- "cmd.dev.health.dirty": "dirty",
- "cmd.dev.health.to_push": "to push",
- "cmd.dev.health.synced": "synced",
- "cmd.dev.health.up_to_date": "up to date",
- "cmd.dev.health.to_pull": "to pull",
- "cmd.dev.health.errors": "errors",
- "cmd.dev.health.more": "+{{.Count}} more",
-
- "cmd.dev.work.table_repo": "Repo",
- "cmd.dev.work.table_modified": "Modified",
- "cmd.dev.work.table_untracked": "Untracked",
- "cmd.dev.work.table_staged": "Staged",
- "cmd.dev.work.table_ahead": "Ahead",
- "cmd.dev.work.error_prefix": "error:",
- "cmd.dev.work.use_commit_flag": "Use --commit to have Claude create commits",
- "cmd.dev.work.all_up_to_date": "All repos up to date.",
- "cmd.dev.work.repos_with_unpushed": "{{.Count}} repo(s) with unpushed commits:",
- "cmd.dev.work.commits_count": "{{.Count}} commit(s)",
-
- "cmd.dev.issues.no_issues": "No open issues found.",
- "cmd.dev.issues.open_issues": "{{.Count}} open issue(s):",
- "cmd.dev.issues.error_label": "Error:",
-
- "cmd.dev.reviews.no_prs": "No open PRs found.",
- "cmd.dev.reviews.open_prs": "{{.Count}} open PR(s)",
- "cmd.dev.reviews.pending": "{{.Count}} pending",
- "cmd.dev.reviews.approved": "{{.Count}} approved",
- "cmd.dev.reviews.changes_requested": "{{.Count}} changes requested",
- "cmd.dev.reviews.status_approved": "v approved",
- "cmd.dev.reviews.status_changes": "* changes requested",
- "cmd.dev.reviews.status_pending": "o pending review",
- "cmd.dev.reviews.draft": "[draft]",
-
- "cmd.dev.ci.repos_checked": "{{.Count}} repos checked",
- "cmd.dev.ci.passing": "{{.Count}} passing",
- "cmd.dev.ci.failing": "{{.Count}} failing",
- "cmd.dev.ci.pending": "{{.Count}} pending",
- "cmd.dev.ci.no_ci": "{{.Count}} no CI",
- "cmd.dev.ci.error_label": "Error:",
-
- "cmd.dev.impact.analysis_for": "Impact analysis for",
- "cmd.dev.impact.no_dependents": "No repos depend on {{.Name}}",
- "cmd.dev.impact.direct_dependents": "{{.Count}} direct dependent(s):",
- "cmd.dev.impact.transitive_dependents": "{{.Count}} transitive dependent(s):",
- "cmd.dev.impact.summary": "Summary:",
- "cmd.dev.impact.changes_affect": "Changes to {{.Repo}} affect {{.Affected}}/{{.Total}} repos",
- "cmd.dev.impact.requires_registry": "impact analysis requires repos.yaml with dependency information",
-
- "cmd.dev.sync.success": "Public APIs synchronized successfully.",
- "cmd.dev.sync.error_prefix": "Error:",
-
- "cmd.dev.vm.already_installed": "Dev environment already installed",
- "cmd.dev.vm.check_updates": "Use {{.Command}} to check for updates",
- "cmd.dev.vm.image_label": "Image:",
- "cmd.dev.vm.downloading": "Downloading dev environment...",
- "cmd.dev.vm.progress_label": "Progress:",
- "cmd.dev.vm.installed_in": "Installed in {{.Duration}}",
- "cmd.dev.vm.start_with": "Start with: {{.Command}}",
- "cmd.dev.vm.not_installed": "dev environment not installed (run 'core dev install' first)",
- "cmd.dev.vm.config_label": "Config:",
- "cmd.dev.vm.config_value": "{{.Memory}}MB, {{.CPUs}} CPUs",
- "cmd.dev.vm.booting": "Booting dev environment...",
- "cmd.dev.vm.running": "Dev environment running",
- "cmd.dev.vm.connect_with": "Connect with: {{.Command}}",
- "cmd.dev.vm.ssh_port": "SSH port:",
- "cmd.dev.vm.not_running": "Dev environment is not running",
- "cmd.dev.vm.stopping": "Stopping dev environment...",
- "cmd.dev.vm.stopped": "Stopped",
- "cmd.dev.vm.status_title": "Dev Environment Status",
- "cmd.dev.vm.installed_label": "Installed:",
- "cmd.dev.vm.installed_yes": "Yes",
- "cmd.dev.vm.installed_no": "No",
- "cmd.dev.vm.version_label": "Version:",
- "cmd.dev.vm.install_with": "Install with: {{.Command}}",
- "cmd.dev.vm.status_label": "Status:",
- "cmd.dev.vm.status_running": "Running",
- "cmd.dev.vm.status_stopped": "Stopped",
- "cmd.dev.vm.container_label": "Container:",
- "cmd.dev.vm.memory_label": "Memory:",
- "cmd.dev.vm.cpus_label": "CPUs:",
- "cmd.dev.vm.uptime_label": "Uptime:",
- "cmd.dev.vm.checking_updates": "Checking for updates...",
- "cmd.dev.vm.current_label": "Current:",
- "cmd.dev.vm.latest_label": "Latest:",
- "cmd.dev.vm.up_to_date": "Already up to date",
- "cmd.dev.vm.update_available": "Update available",
- "cmd.dev.vm.run_to_update": "Run {{.Command}} to update",
- "cmd.dev.vm.stopping_current": "Stopping current instance...",
- "cmd.dev.vm.downloading_update": "Downloading update...",
- "cmd.dev.vm.updated_in": "Updated in {{.Duration}}",
-
- "cmd.php.short": "Laravel/PHP development tools",
- "cmd.php.long": "Manage Laravel development environment with FrankenPHP.\n\nServices orchestrated:\n - FrankenPHP/Octane (port 8000, HTTPS on 443)\n - Vite dev server (port 5173)\n - Laravel Horizon (queue workers)\n - Laravel Reverb (WebSocket, port 8080)\n - Redis (port 6379)",
-
- "cmd.php.dev.short": "Start Laravel development environment",
- "cmd.php.dev.long": "Starts all detected Laravel services.\n\nAuto-detects:\n - Vite (vite.config.js/ts)\n - Horizon (config/horizon.php)\n - Reverb (config/reverb.php)\n - Redis (from .env)",
- "cmd.php.dev.starting": "Starting {{.AppName}} development environment",
- "cmd.php.dev.detected_services": "Detected services:",
- "cmd.php.dev.services_started": "Services started:",
- "cmd.php.dev.shutting_down": "Shutting down...",
- "cmd.php.dev.all_stopped": "All services stopped",
- "cmd.php.dev.press_ctrl_c": "Press Ctrl+C to stop all services",
- "cmd.php.dev.logs_failed": "Failed to get logs: {{.Error}}",
- "cmd.php.dev.stop_error": "Error stopping services: {{.Error}}",
-
- "cmd.php.logs.short": "View service logs",
- "cmd.php.logs.long": "Stream logs from Laravel services.\n\nServices: frankenphp, vite, horizon, reverb, redis",
-
- "cmd.php.stop.short": "Stop all Laravel services",
- "cmd.php.stop.stopping": "Stopping services...",
-
- "cmd.php.status.short": "Show service status",
- "cmd.php.status.project": "Project:",
- "cmd.php.status.detected_services": "Detected services:",
- "cmd.php.status.package_manager": "Package manager:",
- "cmd.php.status.octane_server": "Octane server:",
- "cmd.php.status.ssl_certs": "SSL certificates:",
- "cmd.php.status.ssl_installed": "installed",
- "cmd.php.status.ssl_not_setup": "not setup",
- "cmd.php.status.running": "running",
- "cmd.php.status.stopped": "stopped",
- "cmd.php.status.error": "error: {{.Error}}",
- "cmd.php.status.port": "port {{.Port}}",
- "cmd.php.status.pid": "pid {{.PID}}",
-
- "cmd.php.ssl.short": "Setup SSL certificates with mkcert",
- "cmd.php.ssl.setting_up": "Setting up SSL for {{.Domain}}",
- "cmd.php.ssl.mkcert_not_installed": "mkcert is not installed",
- "cmd.php.ssl.install_with": "Install with:",
- "cmd.php.ssl.install_macos": "macOS: brew install mkcert",
- "cmd.php.ssl.install_linux": "Linux: see https://github.com/FiloSottile/mkcert",
- "cmd.php.ssl.certs_exist": "Certificates already exist",
- "cmd.php.ssl.certs_created": "SSL certificates created",
- "cmd.php.ssl.cert_label": "Cert:",
- "cmd.php.ssl.key_label": "Key:",
- "cmd.php.ssl.flag.domain": "Domain for certificate (default: from APP_URL)",
-
- "cmd.php.dev.flag.no_vite": "Skip Vite dev server",
- "cmd.php.dev.flag.no_horizon": "Skip Laravel Horizon",
- "cmd.php.dev.flag.no_reverb": "Skip Laravel Reverb",
- "cmd.php.dev.flag.no_redis": "Skip Redis server",
- "cmd.php.dev.flag.https": "Enable HTTPS with mkcert",
- "cmd.php.dev.flag.domain": "Domain for SSL certificate (default: from APP_URL or localhost)",
- "cmd.php.dev.flag.port": "FrankenPHP port (default: 8000)",
-
- "cmd.php.logs.flag.follow": "Follow log output",
- "cmd.php.logs.flag.service": "Specific service (default: all)",
-
- "cmd.php.build.short": "Build Docker or LinuxKit image",
- "cmd.php.build.long": "Build a production-ready container image for the PHP project.\n\nBy default, builds a Docker image using FrankenPHP.\nUse --type linuxkit to build a LinuxKit VM image instead.",
- "cmd.php.build.building_docker": "Building Docker image...",
- "cmd.php.build.building_linuxkit": "Building LinuxKit image...",
- "cmd.php.build.php_version": "PHP Version:",
- "cmd.php.build.laravel": "Laravel:",
- "cmd.php.build.octane": "Octane:",
- "cmd.php.build.frontend": "Frontend:",
- "cmd.php.build.extensions": "Extensions:",
- "cmd.php.build.image": "Image:",
- "cmd.php.build.platform": "Platform:",
- "cmd.php.build.template": "Template:",
- "cmd.php.build.format": "Format:",
- "cmd.php.build.docker_success": "Docker image built successfully",
- "cmd.php.build.docker_run_with": "Run with:",
- "cmd.php.build.linuxkit_success": "LinuxKit image built successfully",
- "cmd.php.build.flag.type": "Build type: docker (default) or linuxkit",
- "cmd.php.build.flag.name": "Image name (default: project directory name)",
- "cmd.php.build.flag.tag": "Image tag (default: latest)",
- "cmd.php.build.flag.platform": "Target platform (e.g., linux/amd64, linux/arm64)",
- "cmd.php.build.flag.dockerfile": "Path to custom Dockerfile",
- "cmd.php.build.flag.output": "Output path for LinuxKit image",
- "cmd.php.build.flag.format": "LinuxKit output format: qcow2 (default), iso, raw, vmdk",
- "cmd.php.build.flag.template": "LinuxKit template name (default: server-php)",
- "cmd.php.build.flag.no_cache": "Build without cache",
-
- "cmd.php.serve.short": "Run production container",
- "cmd.php.serve.long": "Run a production PHP container.\n\nThis starts the built Docker image in production mode.",
- "cmd.php.serve.running": "Running production container...",
- "cmd.php.serve.ports": "Ports:",
- "cmd.php.serve.stopped": "Container stopped",
- "cmd.php.serve.name_required": "--name is required: specify the Docker image name",
- "cmd.php.serve.flag.name": "Docker image name (required)",
- "cmd.php.serve.flag.tag": "Image tag (default: latest)",
- "cmd.php.serve.flag.container": "Container name",
- "cmd.php.serve.flag.port": "HTTP port (default: 80)",
- "cmd.php.serve.flag.https_port": "HTTPS port (default: 443)",
- "cmd.php.serve.flag.detach": "Run in detached mode",
- "cmd.php.serve.flag.env_file": "Path to environment file",
-
- "cmd.php.shell.short": "Open shell in running container",
- "cmd.php.shell.long": "Open an interactive shell in a running PHP container.",
- "cmd.php.shell.opening": "Opening shell in container {{.Container}}...",
-
- "cmd.php.packages.short": "Manage local PHP packages",
- "cmd.php.packages.long": "Link and manage local PHP packages for development.\n\nSimilar to npm link, this adds path repositories to composer.json\nfor developing packages alongside your project.",
- "cmd.php.packages.link.short": "Link local packages",
- "cmd.php.packages.link.long": "Link local PHP packages for development.\n\nAdds path repositories to composer.json with symlink enabled.\nThe package name is auto-detected from each path's composer.json.",
- "cmd.php.packages.link.linking": "Linking packages...",
- "cmd.php.packages.link.done": "Packages linked. Run 'composer update' to install.",
- "cmd.php.packages.unlink.short": "Unlink packages",
- "cmd.php.packages.unlink.long": "Remove linked packages from composer.json.\n\nRemoves path repositories by package name.",
- "cmd.php.packages.unlink.unlinking": "Unlinking packages...",
- "cmd.php.packages.unlink.done": "Packages unlinked. Run 'composer update' to remove.",
- "cmd.php.packages.update.short": "Update linked packages",
- "cmd.php.packages.update.long": "Run composer update for linked packages.\n\nIf no packages specified, updates all packages.",
- "cmd.php.packages.update.updating": "Updating packages...",
- "cmd.php.packages.update.done": "Packages updated",
- "cmd.php.packages.list.short": "List linked packages",
- "cmd.php.packages.list.long": "List all locally linked packages.\n\nShows package name, path, and version for each linked package.",
- "cmd.php.packages.list.none_found": "No linked packages found",
- "cmd.php.packages.list.linked": "Linked packages:",
- "cmd.php.packages.list.unknown": "(unknown)",
- "cmd.php.packages.list.path": "Path:",
- "cmd.php.packages.list.version": "Version:",
-
- "cmd.php.test.short": "Run PHP tests (PHPUnit/Pest)",
- "cmd.php.test.long": "Run PHP tests using PHPUnit or Pest.\n\nAuto-detects Pest if tests/Pest.php exists, otherwise uses PHPUnit.",
- "cmd.php.test.running": "Running tests with {{.Runner}}",
- "cmd.php.test.passed": "All tests passed",
- "cmd.php.test.failed": "Some tests failed",
- "cmd.php.test.flag.parallel": "Run tests in parallel",
- "cmd.php.test.flag.coverage": "Generate code coverage",
- "cmd.php.test.flag.filter": "Filter tests by name pattern",
- "cmd.php.test.flag.group": "Run only tests in specified group",
-
- "cmd.php.fmt.short": "Format PHP code with Laravel Pint",
- "cmd.php.fmt.long": "Format PHP code using Laravel Pint.",
- "cmd.php.fmt.checking": "Checking code with {{.Formatter}}",
- "cmd.php.fmt.formatting": "Formatting code with {{.Formatter}}",
- "cmd.php.fmt.no_formatter": "no formatter found (install Laravel Pint: composer require laravel/pint --dev)",
- "cmd.php.fmt.success": "Code formatted successfully",
- "cmd.php.fmt.no_issues": "No formatting issues found",
- "cmd.php.fmt.flag.fix": "Auto-fix formatting issues",
- "cmd.php.fmt.flag.diff": "Show diff of changes",
-
- "cmd.php.analyse.short": "Run PHPStan static analysis",
- "cmd.php.analyse.long": "Run PHPStan or Larastan static analysis.\n\nAuto-detects Larastan if installed, otherwise uses PHPStan.",
- "cmd.php.analyse.running": "Running static analysis with {{.Analyser}}",
- "cmd.php.analyse.no_analyser": "no static analyser found (install PHPStan: composer require phpstan/phpstan --dev)",
- "cmd.php.analyse.no_issues": "No issues found",
- "cmd.php.analyse.flag.level": "PHPStan analysis level (0-9)",
- "cmd.php.analyse.flag.memory": "Memory limit (e.g., 2G)",
-
- "cmd.php.psalm.short": "Run Psalm static analysis",
- "cmd.php.psalm.long": "Run Psalm deep static analysis with Laravel plugin support.\n\nPsalm provides deeper type inference than PHPStan and catches\ndifferent classes of bugs. Both should be run for best coverage.",
- "cmd.php.psalm.not_found": "Psalm not found",
- "cmd.php.psalm.install": "composer require --dev vimeo/psalm",
- "cmd.php.psalm.setup": "./vendor/bin/psalm --init",
- "cmd.php.psalm.analysing": "Analysing code with Psalm",
- "cmd.php.psalm.analysing_fixing": "Analysing and fixing code with Psalm",
- "cmd.php.psalm.no_issues": "No issues found",
- "cmd.php.psalm.flag.level": "Error level (1=strictest, 8=most lenient)",
- "cmd.php.psalm.flag.fix": "Auto-fix issues where possible",
- "cmd.php.psalm.flag.baseline": "Generate/update baseline file",
- "cmd.php.psalm.flag.show_info": "Show info-level issues",
-
- "cmd.php.audit.short": "Security audit for dependencies",
- "cmd.php.audit.long": "Check PHP and JavaScript dependencies for known vulnerabilities.\n\nRuns composer audit and npm audit (if package.json exists).",
- "cmd.php.audit.scanning": "Scanning dependencies for vulnerabilities",
- "cmd.php.audit.secure": "secure",
- "cmd.php.audit.error": "error",
- "cmd.php.audit.vulnerabilities": "{{.Count}} vulnerabilities",
- "cmd.php.audit.found_vulns": "Found {{.Count}} vulnerabilities across dependencies",
- "cmd.php.audit.fix_hint": "composer update && npm update",
- "cmd.php.audit.completed_errors": "audit completed with errors",
- "cmd.php.audit.all_secure": "All dependencies are secure",
- "cmd.php.audit.flag.json": "Output in JSON format",
- "cmd.php.audit.flag.fix": "Auto-fix vulnerabilities (npm only)",
-
- "cmd.php.security.short": "Security vulnerability scanning",
- "cmd.php.security.long": "Scan for security vulnerabilities in configuration and code.\n\nChecks environment config, file permissions, code patterns,\nand runs security-focused static analysis.",
- "cmd.php.security.running": "Running security checks",
- "cmd.php.security.checks_suffix": " CHECKS:",
- "cmd.php.security.summary": "Security scan complete",
- "cmd.php.security.passed": "Passed:",
- "cmd.php.security.critical": "Critical:",
- "cmd.php.security.high": "High:",
- "cmd.php.security.medium": "Medium:",
- "cmd.php.security.low": "Low:",
- "cmd.php.security.fix_label": "Fix:",
- "cmd.php.security.flag.severity": "Minimum severity (critical, high, medium, low)",
- "cmd.php.security.flag.json": "Output in JSON format",
- "cmd.php.security.flag.sarif": "Output in SARIF format (for GitHub Security)",
- "cmd.php.security.flag.url": "URL to check HTTP headers (optional)",
-
- "cmd.php.qa.short": "Run full QA pipeline",
- "cmd.php.qa.long": "Run the complete quality assurance pipeline.\n\nStages:\n quick: Security audit, code style, PHPStan\n standard: Psalm, tests\n full: Rector dry-run, mutation testing (slow)",
- "cmd.php.qa.running": "Running QA pipeline ({{.Stages}})",
- "cmd.php.qa.no_checks": "No checks available",
- "cmd.php.qa.stage_prefix": "═══ ",
- "cmd.php.qa.stage_suffix": " STAGE ═══",
- "cmd.php.qa.passed": "passed",
- "cmd.php.qa.failed": "failed",
- "cmd.php.qa.all_passed": "All checks passed ({{.Passed}}/{{.Total}})",
- "cmd.php.qa.some_failed": "Some checks failed ({{.Passed}}/{{.Total}} passed)",
- "cmd.php.qa.to_fix": "To fix:",
- "cmd.php.qa.pipeline_failed": "QA pipeline failed",
- "cmd.php.qa.fix_audit": "composer update && npm update",
- "cmd.php.qa.fix_phpstan": "Fix PHPStan errors shown above",
- "cmd.php.qa.fix_psalm": "Fix Psalm errors shown above",
- "cmd.php.qa.fix_tests": "Fix failing tests shown above",
- "cmd.php.qa.fix_infection": "Improve test coverage for mutated code",
- "cmd.php.qa.issue_vulns": "vulnerabilities",
- "cmd.php.qa.issue_style": "Code style issues found",
- "cmd.php.qa.issue_analysis": "Static analysis errors",
- "cmd.php.qa.issue_types": "Type errors found",
- "cmd.php.qa.issue_tests": "Test failures",
- "cmd.php.qa.issue_rector": "Code improvements available",
- "cmd.php.qa.issue_mutation": "Mutation score below threshold",
- "cmd.php.qa.flag.quick": "Only run quick checks",
- "cmd.php.qa.flag.full": "Run all stages including slow checks",
- "cmd.php.qa.flag.fix": "Auto-fix issues where possible",
-
- "cmd.php.rector.short": "Automated code refactoring",
- "cmd.php.rector.long": "Run Rector for automated code improvements and PHP upgrades.\n\nRector can automatically upgrade PHP syntax, improve code quality,\nand apply framework-specific refactorings.",
- "cmd.php.rector.not_found": "Rector not found",
- "cmd.php.rector.install": "composer require --dev rector/rector",
- "cmd.php.rector.setup": "./vendor/bin/rector init",
- "cmd.php.rector.analysing": "Analysing code with Rector",
- "cmd.php.rector.refactoring": "Refactoring code with Rector",
- "cmd.php.rector.changes_suggested": "Changes suggested (use --fix to apply)",
- "cmd.php.rector.refactored": "Code refactored successfully",
- "cmd.php.rector.no_changes": "No changes needed",
- "cmd.php.rector.flag.fix": "Apply changes (default is dry-run)",
- "cmd.php.rector.flag.diff": "Show detailed diff of changes",
- "cmd.php.rector.flag.clear_cache": "Clear Rector cache before running",
-
- "cmd.php.infection.short": "Mutation testing for test quality",
- "cmd.php.infection.long": "Run Infection mutation testing to measure test suite quality.\n\nMutation testing modifies your code and checks if tests catch\nthe changes. High mutation score = high quality tests.\n\nWarning: This can be slow on large codebases.",
- "cmd.php.infection.not_found": "Infection not found",
- "cmd.php.infection.install": "composer require --dev infection/infection",
- "cmd.php.infection.running": "Running mutation testing",
- "cmd.php.infection.note": "This may take a while...",
- "cmd.php.infection.complete": "Mutation testing complete",
- "cmd.php.infection.flag.min_msi": "Minimum mutation score indicator (0-100, default: 50)",
- "cmd.php.infection.flag.min_covered_msi": "Minimum covered mutation score (0-100, default: 70)",
- "cmd.php.infection.flag.threads": "Number of parallel threads (default: 4)",
- "cmd.php.infection.flag.filter": "Filter files by pattern",
- "cmd.php.infection.flag.only_covered": "Only mutate covered code",
-
- "cmd.php.deploy.short": "Deploy to Coolify",
- "cmd.php.deploy.long": "Deploy the PHP application to Coolify.\n\nRequires configuration in .env:\n COOLIFY_URL=https://coolify.example.com\n COOLIFY_TOKEN=your-api-token\n COOLIFY_APP_ID=production-app-id\n COOLIFY_STAGING_APP_ID=staging-app-id (optional)",
- "cmd.php.deploy.deploying": "Deploying to {{.Environment}}...",
- "cmd.php.deploy.success": "Deployment completed successfully",
- "cmd.php.deploy.warning_status": "Deployment ended with status: {{.Status}}",
- "cmd.php.deploy.triggered": "Deployment triggered. Use 'core php deploy:status' to check progress.",
- "cmd.php.deploy.flag.staging": "Deploy to staging environment",
- "cmd.php.deploy.flag.force": "Force deployment even if no changes detected",
- "cmd.php.deploy.flag.wait": "Wait for deployment to complete",
-
- "cmd.php.deploy_status.short": "Show deployment status",
- "cmd.php.deploy_status.long": "Show the status of a deployment.",
- "cmd.php.deploy_status.checking": "Checking {{.Environment}} deployment status...",
- "cmd.php.deploy_status.flag.staging": "Check staging environment",
- "cmd.php.deploy_status.flag.id": "Specific deployment ID",
-
- "cmd.php.deploy_rollback.short": "Rollback to previous deployment",
- "cmd.php.deploy_rollback.long": "Rollback to a previous deployment.\n\nIf no deployment ID is specified, rolls back to the most recent\nsuccessful deployment.",
- "cmd.php.deploy_rollback.rolling_back": "Rolling back {{.Environment}}...",
- "cmd.php.deploy_rollback.success": "Rollback completed successfully",
- "cmd.php.deploy_rollback.warning_status": "Rollback ended with status: {{.Status}}",
- "cmd.php.deploy_rollback.triggered": "Rollback triggered. Use 'core php deploy:status' to check progress.",
- "cmd.php.deploy_rollback.flag.staging": "Rollback staging environment",
- "cmd.php.deploy_rollback.flag.id": "Specific deployment ID to rollback to",
- "cmd.php.deploy_rollback.flag.wait": "Wait for rollback to complete",
-
- "cmd.php.deploy_list.short": "List recent deployments",
- "cmd.php.deploy_list.long": "List recent deployments.",
- "cmd.php.deploy_list.recent": "Recent {{.Environment}} deployments:",
- "cmd.php.deploy_list.none_found": "No deployments found",
- "cmd.php.deploy_list.flag.staging": "List staging deployments",
- "cmd.php.deploy_list.flag.limit": "Number of deployments to list (default: 10)",
-
- "cmd.php.label.php": "PHP:",
- "cmd.php.label.services": "Services:",
- "cmd.php.label.running": "Running:",
- "cmd.php.label.app_url": "App URL:",
- "cmd.php.label.vite": "Vite:",
- "cmd.php.label.warning": "Warning:",
- "cmd.php.label.error": "Error:",
- "cmd.php.label.done": "Done:",
- "cmd.php.label.skip": "Skip:",
- "cmd.php.label.info": "Info:",
- "cmd.php.label.install": "Install:",
- "cmd.php.label.setup": "Setup:",
- "cmd.php.label.fix": "Fix:",
- "cmd.php.label.audit": "Audit:",
- "cmd.php.label.security": "Security:",
- "cmd.php.label.summary": "Summary:",
- "cmd.php.label.qa": "QA:",
- "cmd.php.label.psalm": "Psalm:",
- "cmd.php.label.rector": "Rector:",
- "cmd.php.label.infection": "Infection:",
- "cmd.php.label.deploy": "Deploy:",
- "cmd.php.label.status": "Status:",
- "cmd.php.label.id": "ID:",
- "cmd.php.label.url": "URL:",
- "cmd.php.label.branch": "Branch:",
- "cmd.php.label.commit": "Commit:",
- "cmd.php.label.message": "Message:",
- "cmd.php.label.started": "Started:",
- "cmd.php.label.completed": "Completed:",
- "cmd.php.label.duration": "Duration:",
-
- "cmd.php.error.not_laravel": "not a Laravel project (missing artisan or laravel/framework)",
- "cmd.php.error.not_laravel_short": "not a Laravel project",
- "cmd.php.error.not_php": "not a PHP project (missing composer.json)",
- "cmd.php.error.working_dir": "failed to get working directory",
- "cmd.php.error.start_services": "failed to start services",
- "cmd.php.error.stop_services": "failed to stop services",
- "cmd.php.error.get_logs": "failed to get logs",
- "cmd.php.error.detect_config": "failed to detect project configuration",
- "cmd.php.error.build_failed": "build failed",
- "cmd.php.error.start_container": "failed to start container",
- "cmd.php.error.open_shell": "failed to open shell",
- "cmd.php.error.link_packages": "failed to link packages",
- "cmd.php.error.unlink_packages": "failed to unlink packages",
- "cmd.php.error.update_packages": "composer update failed",
- "cmd.php.error.list_packages": "failed to list packages",
- "cmd.php.error.tests_failed": "tests failed",
- "cmd.php.error.fmt_failed": "formatting failed",
- "cmd.php.error.fmt_issues": "formatting issues found",
- "cmd.php.error.analysis_issues": "analysis found issues",
- "cmd.php.error.psalm_issues": "psalm found issues",
- "cmd.php.error.psalm_not_installed": "psalm not installed",
- "cmd.php.error.audit_failed": "audit failed",
- "cmd.php.error.vulns_found": "vulnerabilities found",
- "cmd.php.error.security_failed": "security check failed",
- "cmd.php.error.critical_high_issues": "critical or high severity issues found",
- "cmd.php.error.rector_failed": "rector failed",
- "cmd.php.error.rector_not_installed": "rector not installed",
- "cmd.php.error.infection_failed": "mutation testing failed",
- "cmd.php.error.infection_not_installed": "infection not installed",
- "cmd.php.error.mkcert_not_installed": "mkcert not installed",
- "cmd.php.error.ssl_setup": "failed to setup SSL",
- "cmd.php.error.deploy_failed": "deployment failed",
- "cmd.php.error.status_failed": "failed to get status",
- "cmd.php.error.rollback_failed": "rollback failed",
- "cmd.php.error.list_deployments": "failed to list deployments",
-
- "cmd.go.short": "Go development tools",
- "cmd.go.long": "Go development tools with enhanced output and environment setup.\n\nCommands:\n test Run tests\n cov Run tests with coverage report\n fmt Format Go code\n lint Run golangci-lint\n install Install Go binary\n mod Module management (tidy, download, verify)\n work Workspace management",
-
- "cmd.go.test.short": "Run tests with coverage",
- "cmd.go.test.long": "Run Go tests with coverage reporting.\n\nSets MACOSX_DEPLOYMENT_TARGET=26.0 to suppress linker warnings.\nFilters noisy output and provides colour-coded coverage.\n\nExamples:\n core go test\n core go test --coverage\n core go test --pkg ./pkg/crypt\n core go test --run TestHash",
- "cmd.go.test.label": "Test:",
- "cmd.go.test.running": "Running tests",
- "cmd.go.test.package_label": "Package:",
- "cmd.go.test.passed": "{{.Count}} passed",
- "cmd.go.test.passed_failed": "{{.Passed}} passed, {{.Failed}} failed",
- "cmd.go.test.all_passed": "PASS All tests passed",
- "cmd.go.test.some_failed": "FAIL Some tests failed",
- "cmd.go.test.coverage": "Coverage",
- "cmd.go.test.flag.coverage": "Show detailed per-package coverage",
- "cmd.go.test.flag.pkg": "Package to test (default: ./...)",
- "cmd.go.test.flag.run": "Run only tests matching regexp",
- "cmd.go.test.flag.short": "Run only short tests",
- "cmd.go.test.flag.race": "Enable race detector",
- "cmd.go.test.flag.json": "Output JSON results",
- "cmd.go.test.flag.verbose": "Verbose output",
-
- "cmd.go.cov.short": "Run tests with coverage report",
- "cmd.go.cov.long": "Run tests and generate coverage report.\n\nExamples:\n core go cov # Run with coverage summary\n core go cov --html # Generate HTML report\n core go cov --open # Generate and open HTML report\n core go cov --threshold 80 # Fail if coverage < 80%",
- "cmd.go.cov.label": "Coverage:",
- "cmd.go.cov.running": "Running tests with coverage",
- "cmd.go.cov.html_label": "HTML:",
- "cmd.go.cov.open_manually": "(open manually)",
- "cmd.go.cov.below_threshold": "FAIL Coverage {{.Actual}}% is below threshold {{.Threshold}}%",
- "cmd.go.cov.error.discover": "failed to discover test packages",
- "cmd.go.cov.error.no_packages": "no test packages found",
- "cmd.go.cov.error.create_file": "failed to create coverage file",
- "cmd.go.cov.error.get_coverage": "failed to get coverage",
- "cmd.go.cov.error.generate_html": "failed to generate HTML",
- "cmd.go.cov.error.below_threshold": "coverage below threshold",
- "cmd.go.cov.flag.pkg": "Package to test (default: ./...)",
- "cmd.go.cov.flag.html": "Generate HTML coverage report",
- "cmd.go.cov.flag.open": "Generate and open HTML report in browser",
- "cmd.go.cov.flag.threshold": "Minimum coverage percentage (exit 1 if below)",
-
- "cmd.go.fmt.short": "Format Go code",
- "cmd.go.fmt.long": "Format Go code using gofmt or goimports.\n\nExamples:\n core go fmt # Check formatting\n core go fmt --fix # Fix formatting\n core go fmt --diff # Show diff",
- "cmd.go.fmt.flag.fix": "Fix formatting in place",
- "cmd.go.fmt.flag.diff": "Show diff of changes",
- "cmd.go.fmt.flag.check": "Check only, exit 1 if not formatted",
-
- "cmd.go.lint.short": "Run golangci-lint",
- "cmd.go.lint.long": "Run golangci-lint on the codebase.\n\nExamples:\n core go lint\n core go lint --fix",
- "cmd.go.lint.flag.fix": "Fix issues automatically",
-
- "cmd.go.install.short": "Install Go binary",
- "cmd.go.install.long": "Install Go binary to $GOPATH/bin.\n\nExamples:\n core go install # Install current module\n core go install ./cmd/core # Install specific path\n core go install --no-cgo # Pure Go (no C dependencies)\n core go install -v # Verbose output",
- "cmd.go.install.label": "Install:",
- "cmd.go.install.installing": "Installing",
- "cmd.go.install.path_label": "Path:",
- "cmd.go.install.cgo_label": "CGO:",
- "cmd.go.install.cgo_disabled": "disabled",
- "cmd.go.install.failed": "FAIL Install failed",
- "cmd.go.install.success": "OK",
- "cmd.go.install.installed_to": "Installed to {{.Path}}",
- "cmd.go.install.flag.verbose": "Verbose output",
- "cmd.go.install.flag.no_cgo": "Disable CGO (CGO_ENABLED=0)",
-
- "cmd.go.mod.short": "Module management",
- "cmd.go.mod.long": "Go module management commands.\n\nCommands:\n tidy Add missing and remove unused modules\n download Download modules to local cache\n verify Verify dependencies\n graph Print module dependency graph",
- "cmd.go.mod.tidy.short": "Tidy go.mod",
- "cmd.go.mod.download.short": "Download modules",
- "cmd.go.mod.verify.short": "Verify dependencies",
- "cmd.go.mod.graph.short": "Print dependency graph",
-
- "cmd.go.work.short": "Workspace management",
- "cmd.go.work.long": "Go workspace management commands.\n\nCommands:\n sync Sync go.work with modules\n init Initialize go.work\n use Add module to workspace",
- "cmd.go.work.sync.short": "Sync workspace",
- "cmd.go.work.init.short": "Initialize workspace",
- "cmd.go.work.use.short": "Add module to workspace",
- "cmd.go.work.added": "Added {{.Module}}",
- "cmd.go.work.error.no_modules": "no go.mod files found",
-
- "cmd.go.build.short": "Build Go binaries",
-
- "cmd.doctor.short": "Check development environment",
- "cmd.doctor.long": "Checks that all required tools are installed and configured.\nRun this before 'core setup' to ensure your environment is ready.",
- "cmd.doctor.checking": "Checking development environment...",
- "cmd.doctor.required": "Required:",
- "cmd.doctor.optional": "Optional:",
- "cmd.doctor.github": "GitHub Access:",
- "cmd.doctor.workspace": "Workspace:",
- "cmd.doctor.ready": "Doctor: Environment ready",
- "cmd.doctor.issues": "Doctor: {{.Count}} issues found",
- "cmd.doctor.issues_error": "{{.Count}} required tools missing",
- "cmd.doctor.install_missing": "Install missing tools:",
- "cmd.doctor.verbose_flag": "Show detailed version information",
- "cmd.doctor.ssh_found": "SSH key found",
- "cmd.doctor.ssh_missing": "SSH key missing - run: ssh-keygen && gh ssh-key add",
- "cmd.doctor.cli_auth": "CLI authenticated",
- "cmd.doctor.cli_auth_missing": "CLI authentication - run: gh auth login",
- "cmd.doctor.repos_yaml_found": "Found repos.yaml at {{.Path}}",
- "cmd.doctor.repos_cloned": "{{.Cloned}}/{{.Total}} repos cloned",
- "cmd.doctor.no_repos_yaml": "No repos.yaml found (run from workspace directory)",
- "cmd.doctor.install_macos": "brew install git gh php composer node pnpm docker",
- "cmd.doctor.install_macos_cask": "brew install --cask claude",
- "cmd.doctor.install_linux_header": "# Install via your package manager or:",
- "cmd.doctor.install_linux_git": "# Git: apt install git",
- "cmd.doctor.install_linux_gh": "# GitHub CLI: https://cli.github.com/",
- "cmd.doctor.install_linux_php": "# PHP: apt install php8.3-cli",
- "cmd.doctor.install_linux_node": "# Node: https://nodejs.org/",
- "cmd.doctor.install_linux_pnpm": "# pnpm: npm install -g pnpm",
- "cmd.doctor.install_other": "See documentation for your OS",
-
- "cmd.doctor.check.git.name": "Git",
- "cmd.doctor.check.git.description": "Version control",
- "cmd.doctor.check.gh.name": "GitHub CLI",
- "cmd.doctor.check.gh.description": "GitHub integration (issues, PRs, CI)",
- "cmd.doctor.check.php.name": "PHP",
- "cmd.doctor.check.php.description": "Laravel packages",
- "cmd.doctor.check.composer.name": "Composer",
- "cmd.doctor.check.composer.description": "PHP dependencies",
- "cmd.doctor.check.node.name": "Node.js",
- "cmd.doctor.check.node.description": "Frontend builds",
- "cmd.doctor.check.pnpm.name": "pnpm",
- "cmd.doctor.check.pnpm.description": "Fast package manager",
- "cmd.doctor.check.claude.name": "Claude Code",
- "cmd.doctor.check.claude.description": "AI-assisted development",
- "cmd.doctor.check.docker.name": "Docker",
- "cmd.doctor.check.docker.description": "Container runtime",
-
- "cmd.setup.short": "Bootstrap workspace or clone packages from registry",
- "cmd.setup.long": "Sets up a development workspace.\n\nREGISTRY MODE (repos.yaml exists):\n Clones all repositories defined in repos.yaml into packages/.\n Skips repos that already exist. Use --only to filter by type.\n\nBOOTSTRAP MODE (no repos.yaml):\n 1. Clones core-devops to set up the workspace\n 2. Presents an interactive wizard to select packages\n 3. Clones selected packages\n\nUse --all to skip the wizard and clone everything.",
-
- "cmd.setup.flag.registry": "Path to repos.yaml (auto-detected if not specified)",
- "cmd.setup.flag.only": "Only clone repos of these types (comma-separated: foundation,module,product)",
- "cmd.setup.flag.dry_run": "Show what would be cloned without cloning",
- "cmd.setup.flag.all": "Skip wizard, clone all packages (non-interactive)",
- "cmd.setup.flag.name": "Project directory name for bootstrap mode",
- "cmd.setup.flag.build": "Run build after cloning",
-
- "cmd.setup.bootstrap_mode": "Bootstrap mode (no repos.yaml found)",
- "cmd.setup.cloning_current_dir": "Cloning into current directory",
- "cmd.setup.creating_project_dir": "Creating project directory",
- "cmd.setup.cloning": "Cloning",
- "cmd.setup.cloned": "cloned",
- "cmd.setup.would_clone": "Would clone",
- "cmd.setup.already_exists": "already exists",
- "cmd.setup.would_load_registry": "Would load registry from",
-
- "cmd.setup.registry_label": "Registry:",
- "cmd.setup.org_label": "Org:",
- "cmd.setup.target_label": "Target:",
- "cmd.setup.filter_label": "Filter:",
-
- "cmd.setup.to_clone": "{{.Count}} to clone",
- "cmd.setup.exist": "{{.Count}} exist",
- "cmd.setup.skipped": "{{.Count}} skipped",
- "cmd.setup.nothing_to_clone": "Nothing to clone.",
- "cmd.setup.would_clone_list": "Would clone:",
- "cmd.setup.cancelled": "Cancelled.",
- "cmd.setup.done": "done",
- "cmd.setup.done_label": "Done:",
- "cmd.setup.cloned_count": "{{.Count}} cloned",
- "cmd.setup.failed_count": "{{.Count}} failed",
- "cmd.setup.already_exist_count": "{{.Count}} already exist",
- "cmd.setup.running_build": "Running build...",
- "cmd.setup.complete": "Setup complete",
-
- "cmd.setup.repo.setting_up": "Setting up repository",
- "cmd.setup.repo.detected_type": "Detected project type",
- "cmd.setup.repo.would_create": "Would create",
- "cmd.setup.repo.created": "Created",
-
- "cmd.setup.wizard.git_repo_title": "This directory is a git repository",
- "cmd.setup.wizard.what_to_do": "What would you like to do?",
- "cmd.setup.wizard.option_setup": "Setup Working Directory",
- "cmd.setup.wizard.option_package": "Create Package (clone repos into subdirectory)",
- "cmd.setup.wizard.project_name_title": "Project directory name",
- "cmd.setup.wizard.project_name_desc": "Enter the name for your new workspace directory",
- "cmd.setup.wizard.package_selection": "Package Selection",
- "cmd.setup.wizard.selection_hint": "Use space to select/deselect, enter to confirm",
- "cmd.setup.wizard.select_packages": "Select packages to clone",
- "cmd.setup.wizard.confirm_clone": "Clone {{.Count}} packages to {{.Target}}?",
- "cmd.setup.wizard.confirm_yes": "Yes, clone",
- "cmd.setup.wizard.confirm_cancel": "Cancel",
-
- "cmd.setup.error.build_failed": "build failed",
-
- "cmd.build.short": "Build projects with auto-detection and cross-compilation",
- "cmd.build.long": "Builds the current project with automatic type detection.\nSupports Go, Wails, Docker, LinuxKit, and Taskfile projects.\nConfiguration can be provided via .core/build.yaml or command-line flags.\n\nExamples:\n core build # Auto-detect and build\n core build --type docker # Build Docker image\n core build --type linuxkit # Build LinuxKit image\n core build --type linuxkit --config linuxkit.yml --format qcow2-bios",
-
- "cmd.build.from_path.short": "Build from a local directory",
- "cmd.build.from_path.starting": "Starting build from path:",
- "cmd.build.from_path.generating_template": "Generating application from template...",
- "cmd.build.from_path.copying_files": "Copying application files...",
- "cmd.build.from_path.compiling": "Compiling application...",
- "cmd.build.from_path.success": "Build successful! Executable created at:",
- "cmd.build.from_path.flag.path": "The path to the static web application files",
- "cmd.build.from_path.error.invalid_path": "invalid path specified",
- "cmd.build.from_path.error.must_be_directory": "path specified must be a directory",
- "cmd.build.from_path.error.clean_build_dir": "failed to clean build directory",
- "cmd.build.from_path.error.anchor_template": "failed to anchor template filesystem",
- "cmd.build.from_path.error.create_sod": "failed to create new sod instance",
- "cmd.build.from_path.error.extract_template": "failed to extract template",
- "cmd.build.from_path.error.copy_files": "failed to copy application files",
- "cmd.build.from_path.error.go_mod_tidy": "go mod tidy failed",
- "cmd.build.from_path.error.go_build": "go build failed",
-
- "cmd.build.pwa.short": "Build from a live PWA URL",
- "cmd.build.pwa.starting": "Starting PWA build from URL:",
- "cmd.build.pwa.downloading_to": "Downloading PWA to temporary directory:",
- "cmd.build.pwa.found_manifest": "Found manifest:",
- "cmd.build.pwa.download_complete": "PWA download complete.",
- "cmd.build.pwa.warning": "Warning:",
- "cmd.build.pwa.no_manifest": "no manifest file found. Proceeding with basic site download.",
- "cmd.build.pwa.asset_download_failed": "failed to download asset",
- "cmd.build.pwa.flag.url": "The URL of the PWA to build",
- "cmd.build.pwa.error.create_temp_dir": "failed to create temporary directory",
- "cmd.build.pwa.error.download_failed": "failed to download PWA",
- "cmd.build.pwa.error.fetch_url": "failed to fetch URL",
- "cmd.build.pwa.error.read_response": "failed to read response body",
- "cmd.build.pwa.error.write_index": "failed to write index.html",
- "cmd.build.pwa.error.fetch_manifest": "failed to fetch or parse manifest",
- "cmd.build.pwa.error.no_manifest_tag": "no tag found",
-
- "cmd.build.sdk.short": "Generate API SDKs from OpenAPI spec",
- "cmd.build.sdk.long": "Generates typed API clients from OpenAPI specifications.\nSupports TypeScript, Python, Go, and PHP.\n\nExamples:\n core build sdk # Generate all configured SDKs\n core build sdk --lang typescript # Generate only TypeScript SDK\n core build sdk --spec api.yaml # Use specific OpenAPI spec",
- "cmd.build.sdk.label": "Build SDK:",
- "cmd.build.sdk.generating": "Generating SDKs",
- "cmd.build.sdk.dry_run_mode": "(dry-run mode)",
- "cmd.build.sdk.spec_label": "Spec:",
- "cmd.build.sdk.language_label": "Language:",
- "cmd.build.sdk.languages_label": "Languages:",
- "cmd.build.sdk.generated_label": "Generated:",
- "cmd.build.sdk.would_generate": "Would generate SDKs (dry-run)",
- "cmd.build.sdk.complete": "SDK generation complete",
- "cmd.build.sdk.flag.spec": "Path to OpenAPI spec file",
- "cmd.build.sdk.flag.lang": "Generate only this language (typescript, python, go, php)",
- "cmd.build.sdk.flag.version": "Version to embed in generated SDKs",
- "cmd.build.sdk.flag.dry_run": "Show what would be generated without writing files",
-
- "cmd.build.flag.type": "Builder type (go, wails, docker, linuxkit, taskfile) - auto-detected if not specified",
- "cmd.build.flag.ci": "CI mode - minimal output with JSON artifact list at the end",
- "cmd.build.flag.targets": "Comma-separated OS/arch pairs (e.g., linux/amd64,darwin/arm64)",
- "cmd.build.flag.output": "Output directory for artifacts (default: dist)",
- "cmd.build.flag.archive": "Create archives (tar.gz for linux/darwin, zip for windows)",
- "cmd.build.flag.checksum": "Generate SHA256 checksums and CHECKSUMS.txt",
- "cmd.build.flag.config": "Config file path (for linuxkit: YAML config, for docker: Dockerfile)",
- "cmd.build.flag.format": "Output format for linuxkit (iso-bios, qcow2-bios, raw, vmdk)",
- "cmd.build.flag.push": "Push Docker image after build",
- "cmd.build.flag.image": "Docker image name (e.g., host-uk/core-devops)",
- "cmd.build.flag.no_sign": "Skip all code signing",
- "cmd.build.flag.notarize": "Enable macOS notarization (requires Apple credentials)",
-
- "cmd.build.label.build": "Build:",
- "cmd.build.label.type": "Type:",
- "cmd.build.label.output": "Output:",
- "cmd.build.label.binary": "Binary:",
- "cmd.build.label.targets": "Targets:",
- "cmd.build.label.error": "Error:",
- "cmd.build.label.success": "Success:",
- "cmd.build.label.sign": "Sign:",
- "cmd.build.label.archive": "Archive:",
- "cmd.build.label.checksum": "Checksum:",
- "cmd.build.label.ok": "OK:",
-
- "cmd.build.building_project": "Building project",
- "cmd.build.built_artifacts": "Built {{.Count}} artifact(s)",
- "cmd.build.signing_binaries": "Signing binaries...",
- "cmd.build.creating_archives": "Creating archives...",
- "cmd.build.computing_checksums": "Computing checksums...",
-
- "cmd.build.error.working_dir": "failed to get working directory",
- "cmd.build.error.load_config": "failed to load config",
- "cmd.build.error.detect_type": "failed to detect project type",
- "cmd.build.error.no_project_type": "no supported project type detected in {{.Dir}}\nSupported types: go (go.mod), wails (wails.json), node (package.json), php (composer.json)",
- "cmd.build.error.build_failed": "build failed",
- "cmd.build.error.signing_failed": "signing failed",
- "cmd.build.error.notarization_failed": "notarization failed",
- "cmd.build.error.archive_failed": "archive failed",
- "cmd.build.error.marshal_artifacts": "failed to marshal artifacts",
- "cmd.build.error.checksum_failed": "checksum failed",
- "cmd.build.error.write_checksums": "failed to write CHECKSUMS.txt",
- "cmd.build.error.gpg_signing_failed": "GPG signing failed",
- "cmd.build.error.invalid_target": "invalid target format \"{{.Target}}\", expected OS/arch (e.g., linux/amd64)",
- "cmd.build.error.no_targets": "no valid targets specified",
- "cmd.build.error.node_not_implemented": "Node.js builder not yet implemented",
- "cmd.build.error.php_not_implemented": "PHP builder not yet implemented",
- "cmd.build.error.unsupported_type": "unsupported project type",
-
- "cmd.ai.short": "AI agent task management",
- "cmd.ai.long": "Manage tasks from the core-agentic service for AI-assisted development.\n\nCommands:\n tasks List tasks (filterable by status, priority, labels)\n task View task details or auto-select highest priority\n task:update Update task status or progress\n task:complete Mark task as completed or failed\n task:commit Create git commit with task reference\n task:pr Create GitHub PR linked to task\n claude Claude Code integration\n\nWorkflow:\n core ai tasks # List pending tasks\n core ai task --auto --claim # Auto-select and claim a task\n core ai task:commit -m 'msg' # Commit with task reference\n core ai task:complete # Mark task done",
-
- "cmd.ai.claude.short": "Claude Code integration",
- "cmd.ai.claude.long": "Tools for working with Claude Code.\n\nCommands:\n run Run Claude in the current directory\n config Manage Claude configuration",
- "cmd.ai.claude.run.short": "Run Claude Code in the current directory",
- "cmd.ai.claude.config.short": "Manage Claude configuration",
-
- "cmd.ai.tasks.short": "List available tasks from core-agentic",
- "cmd.ai.tasks.long": "Lists tasks from the core-agentic service.\n\nConfiguration is loaded from:\n 1. Environment variables (AGENTIC_TOKEN, AGENTIC_BASE_URL)\n 2. .env file in current directory\n 3. ~/.core/agentic.yaml\n\nExamples:\n core ai tasks\n core ai tasks --status pending --priority high\n core ai tasks --labels bug,urgent",
- "cmd.ai.tasks.none_found": "No tasks found.",
- "cmd.ai.tasks.found": "{{.Count}} task(s) found:",
- "cmd.ai.tasks.hint": "Use 'core ai task ' to view details",
- "cmd.ai.tasks.flag.status": "Filter by status (pending, in_progress, completed, blocked)",
- "cmd.ai.tasks.flag.priority": "Filter by priority (critical, high, medium, low)",
- "cmd.ai.tasks.flag.labels": "Filter by labels (comma-separated)",
- "cmd.ai.tasks.flag.limit": "Max number of tasks to return",
- "cmd.ai.tasks.flag.project": "Filter by project",
-
- "cmd.ai.task.short": "Show task details or auto-select a task",
- "cmd.ai.task.long": "Shows details of a specific task or auto-selects the highest priority task.\n\nExamples:\n core ai task abc123 # Show task details\n core ai task abc123 --claim # Show and claim the task\n core ai task abc123 --context # Show task with gathered context\n core ai task --auto # Auto-select highest priority pending task",
- "cmd.ai.task.no_pending": "No pending tasks available.",
- "cmd.ai.task.id_required": "task ID required (or use --auto)",
- "cmd.ai.task.context_failed": "Failed to build context",
- "cmd.ai.task.claiming": "Claiming task...",
- "cmd.ai.task.claimed": "Task claimed successfully!",
- "cmd.ai.task.flag.auto": "Auto-select highest priority pending task",
- "cmd.ai.task.flag.claim": "Claim the task after showing details",
- "cmd.ai.task.flag.context": "Show gathered context for AI collaboration",
-
- "cmd.ai.task_update.short": "Update task status or progress",
- "cmd.ai.task_update.long": "Updates a task's status, progress, or adds notes.\n\nExamples:\n core ai task:update abc123 --status in_progress\n core ai task:update abc123 --progress 50 --notes 'Halfway done'",
- "cmd.ai.task_update.flag_required": "at least one of --status, --progress, or --notes required",
- "cmd.ai.task_update.success": "Task {{.ID}} updated successfully",
- "cmd.ai.task_update.flag.status": "New status (pending, in_progress, completed, blocked)",
- "cmd.ai.task_update.flag.progress": "Progress percentage (0-100)",
- "cmd.ai.task_update.flag.notes": "Notes about the update",
-
- "cmd.ai.task_complete.short": "Mark a task as completed",
- "cmd.ai.task_complete.long": "Marks a task as completed with optional output and artifacts.\n\nExamples:\n core ai task:complete abc123 --output 'Feature implemented'\n core ai task:complete abc123 --failed --error 'Build failed'",
- "cmd.ai.task_complete.success": "Task {{.ID}} completed successfully",
- "cmd.ai.task_complete.failed": "Task {{.ID}} marked as failed",
- "cmd.ai.task_complete.flag.output": "Summary of the completed work",
- "cmd.ai.task_complete.flag.failed": "Mark the task as failed",
- "cmd.ai.task_complete.flag.error": "Error message if failed",
-
- "cmd.ai.task_commit.short": "Auto-commit changes with task reference",
- "cmd.ai.task_commit.long": "Creates a git commit with a task reference and co-author attribution.\n\nCommit message format:\n feat(scope): description\n\n Task: #123\n Co-Authored-By: Claude \n\nExamples:\n core ai task:commit abc123 --message 'add user authentication'\n core ai task:commit abc123 -m 'fix login bug' --scope auth\n core ai task:commit abc123 -m 'update docs' --push",
- "cmd.ai.task_commit.message_required": "commit message required (--message or -m)",
- "cmd.ai.task_commit.no_changes": "No uncommitted changes to commit.",
- "cmd.ai.task_commit.creating": "Creating commit for task {{.ID}}...",
- "cmd.ai.task_commit.committed": "Committed:",
- "cmd.ai.task_commit.pushing": "Pushing changes...",
- "cmd.ai.task_commit.pushed": "Changes pushed successfully",
- "cmd.ai.task_commit.flag.message": "Commit message (without task reference)",
- "cmd.ai.task_commit.flag.scope": "Scope for the commit type (e.g., auth, api, ui)",
- "cmd.ai.task_commit.flag.push": "Push changes after committing",
-
- "cmd.ai.task_pr.short": "Create a pull request for a task",
- "cmd.ai.task_pr.long": "Creates a GitHub pull request linked to a task.\n\nRequires the GitHub CLI (gh) to be installed and authenticated.\n\nExamples:\n core ai task:pr abc123\n core ai task:pr abc123 --title 'Add authentication feature'\n core ai task:pr abc123 --draft --labels 'enhancement,needs-review'\n core ai task:pr abc123 --base develop",
- "cmd.ai.task_pr.branch_error": "cannot create PR from {{.Branch}} branch; create a feature branch first",
- "cmd.ai.task_pr.pushing_branch": "Pushing branch {{.Branch}}...",
- "cmd.ai.task_pr.creating": "Creating pull request...",
- "cmd.ai.task_pr.created": "Pull request created!",
- "cmd.ai.task_pr.flag.title": "PR title (defaults to task title)",
- "cmd.ai.task_pr.flag.draft": "Create as draft PR",
- "cmd.ai.task_pr.flag.labels": "Labels to add (comma-separated)",
- "cmd.ai.task_pr.flag.base": "Base branch (defaults to main)",
-
- "cmd.ai.priority.critical": "CRITICAL",
- "cmd.ai.priority.high": "HIGH",
- "cmd.ai.priority.medium": "MEDIUM",
- "cmd.ai.priority.low": "LOW",
-
- "cmd.ai.status.pending": "pending",
- "cmd.ai.status.in_progress": "in_progress",
- "cmd.ai.status.completed": "completed",
- "cmd.ai.status.blocked": "blocked",
-
- "cmd.ai.label.id": "ID:",
- "cmd.ai.label.title": "Title:",
- "cmd.ai.label.priority": "Priority:",
- "cmd.ai.label.status": "Status:",
- "cmd.ai.label.project": "Project:",
- "cmd.ai.label.labels": "Labels:",
- "cmd.ai.label.claimed_by": "Claimed by:",
- "cmd.ai.label.created": "Created:",
- "cmd.ai.label.description": "Description:",
- "cmd.ai.label.related_files": "Related files:",
- "cmd.ai.label.blocked_by": "Blocked by:",
- "cmd.ai.label.url": "URL:",
-
- "cmd.ai.error.load_config": "failed to load config",
- "cmd.ai.error.list_tasks": "failed to list tasks",
- "cmd.ai.error.get_task": "failed to get task",
- "cmd.ai.error.claim_task": "failed to claim task",
- "cmd.ai.error.update_task": "failed to update task",
- "cmd.ai.error.complete_task": "failed to complete task",
- "cmd.ai.error.working_dir": "failed to get working directory",
- "cmd.ai.error.git_status": "failed to check git status",
- "cmd.ai.error.commit": "failed to commit",
- "cmd.ai.error.push": "failed to push",
- "cmd.ai.error.get_branch": "failed to get current branch",
- "cmd.ai.error.push_branch": "failed to push branch",
- "cmd.ai.error.create_pr": "failed to create PR",
-
- "cmd.vm.short": "LinuxKit VM management",
- "cmd.vm.long": "Manage LinuxKit virtual machines.\n\nLinuxKit VMs are lightweight, immutable VMs built from YAML templates.\nThey run using qemu or hyperkit depending on your system.\n\nCommands:\n run Run a VM from image or template\n ps List running VMs\n stop Stop a running VM\n logs View VM logs\n exec Execute command in VM\n templates Manage LinuxKit templates",
-
- "cmd.vm.run.short": "Run a LinuxKit image or template",
- "cmd.vm.run.long": "Runs a LinuxKit image as a VM using the available hypervisor.\n\nSupported image formats: .iso, .qcow2, .vmdk, .raw\n\nYou can also run from a template using --template, which will build and run\nthe image automatically. Use --var to set template variables.\n\nExamples:\n core vm run image.iso\n core vm run -d image.qcow2\n core vm run --name myvm --memory 2048 --cpus 4 image.iso\n core vm run --template core-dev --var SSH_KEY=\"ssh-rsa AAAA...\"\n core vm run --template server-php --var SSH_KEY=\"...\" --var DOMAIN=example.com",
- "cmd.vm.run.flag.name": "Name for the container",
- "cmd.vm.run.flag.detach": "Run in detached mode (background)",
- "cmd.vm.run.flag.memory": "Memory in MB (default: 1024)",
- "cmd.vm.run.flag.cpus": "Number of CPUs (default: 1)",
- "cmd.vm.run.flag.ssh_port": "SSH port for exec commands (default: 2222)",
- "cmd.vm.run.flag.template": "Run from a LinuxKit template (build + run)",
- "cmd.vm.run.flag.var": "Template variable in KEY=VALUE format (can be repeated)",
- "cmd.vm.run.error.image_required": "image path is required (or use --template)",
-
- "cmd.vm.ps.short": "List running VMs",
- "cmd.vm.ps.long": "Lists all VMs. By default, only shows running VMs.\n\nExamples:\n core vm ps\n core vm ps -a",
- "cmd.vm.ps.flag.all": "Show all containers (including stopped)",
- "cmd.vm.ps.header": "ID\tNAME\tIMAGE\tSTATUS\tSTARTED\tPID",
- "cmd.vm.ps.no_containers": "No containers",
- "cmd.vm.ps.no_running": "No running containers",
-
- "cmd.vm.stop.short": "Stop a running VM",
- "cmd.vm.stop.long": "Stops a running VM by ID.\n\nExamples:\n core vm stop abc12345\n core vm stop abc1",
- "cmd.vm.stop.stopping": "Stopping:",
- "cmd.vm.stop.stopped": "Stopped",
-
- "cmd.vm.logs.short": "View VM logs",
- "cmd.vm.logs.long": "View logs from a VM.\n\nExamples:\n core vm logs abc12345\n core vm logs -f abc1",
- "cmd.vm.logs.flag.follow": "Follow log output",
-
- "cmd.vm.exec.short": "Execute a command in a VM",
- "cmd.vm.exec.long": "Execute a command inside a running VM via SSH.\n\nExamples:\n core vm exec abc12345 ls -la\n core vm exec abc1 /bin/sh",
-
- "cmd.vm.templates.short": "Manage LinuxKit templates",
- "cmd.vm.templates.long": "Manage LinuxKit YAML templates for building VMs.\n\nTemplates provide pre-configured LinuxKit configurations for common use cases.\nThey support variable substitution with ${VAR} and ${VAR:-default} syntax.\n\nExamples:\n core vm templates # List available templates\n core vm templates show core-dev # Show template content\n core vm templates vars server-php # Show template variables",
- "cmd.vm.templates.title": "Available LinuxKit Templates",
- "cmd.vm.templates.header": "NAME\tDESCRIPTION",
- "cmd.vm.templates.no_templates": "No templates available.",
- "cmd.vm.templates.hint.show": "Show template:",
- "cmd.vm.templates.hint.vars": "Show variables:",
- "cmd.vm.templates.hint.run": "Run from template:",
-
- "cmd.vm.templates.show.short": "Display template content",
- "cmd.vm.templates.show.long": "Display the content of a LinuxKit template.\n\nExamples:\n core templates show core-dev\n core templates show server-php",
-
- "cmd.vm.templates.vars.short": "Show template variables",
- "cmd.vm.templates.vars.long": "Display all variables used in a template.\n\nShows required variables (no default) and optional variables (with defaults).\n\nExamples:\n core templates vars core-dev\n core templates vars server-php",
- "cmd.vm.templates.vars.required": "Required Variables (no default):",
- "cmd.vm.templates.vars.optional": "Optional Variables (with defaults):",
- "cmd.vm.templates.vars.none": "No variables in this template.",
-
- "cmd.vm.label.image": "Image:",
- "cmd.vm.label.name": "Name:",
- "cmd.vm.label.hypervisor": "Hypervisor:",
- "cmd.vm.label.started": "Started:",
- "cmd.vm.label.pid": "PID:",
- "cmd.vm.label.container_stopped": "Container stopped:",
- "cmd.vm.label.template": "Template:",
- "cmd.vm.label.building": "Building:",
-
- "cmd.vm.hint.view_logs": "Use 'core vm logs {{.ID}}' to view output",
- "cmd.vm.hint.stop": "Use 'core vm stop {{.ID}}' to stop",
-
- "cmd.vm.error.init_manager": "failed to initialize container manager",
- "cmd.vm.error.run_container": "failed to run container",
- "cmd.vm.error.list_containers": "failed to list containers",
- "cmd.vm.error.stop_container": "failed to stop container",
- "cmd.vm.error.get_logs": "failed to get logs",
- "cmd.vm.error.id_required": "container ID is required",
- "cmd.vm.error.id_and_cmd_required": "container ID and command are required",
- "cmd.vm.error.no_match": "no container found matching: {{.ID}}",
- "cmd.vm.error.multiple_match": "multiple containers match '{{.ID}}', be more specific",
- "cmd.vm.error.template_required": "template name is required",
- "cmd.vm.error.apply_template": "failed to apply template",
- "cmd.vm.error.create_temp": "failed to create temp directory",
- "cmd.vm.error.write_template": "failed to write template",
- "cmd.vm.error.build_image": "failed to build image",
- "cmd.vm.error.no_image_found": "no image found after build",
- "cmd.vm.error.linuxkit_not_found": "linuxkit not found. Install with: brew install linuxkit (macOS) or see https://github.com/linuxkit/linuxkit",
-
- "cmd.docs.short": "Documentation management",
- "cmd.docs.long": "Manage documentation across all repos.\nScan for docs, check coverage, and sync to core-php/docs/packages/.",
-
- "cmd.docs.list.short": "List documentation across repos",
- "cmd.docs.list.long": "List documentation files for all repos in the workspace.\n\nShows README.md, CLAUDE.md, CHANGELOG.md, and docs/ directory status\nfor each repository.",
- "cmd.docs.list.flag.registry": "Path to repos.yaml (auto-detected if not specified)",
- "cmd.docs.list.header.repo": "Repo",
- "cmd.docs.list.header.readme": "README",
- "cmd.docs.list.header.claude": "CLAUDE",
- "cmd.docs.list.header.changelog": "CHANGELOG",
- "cmd.docs.list.header.docs": "docs/",
- "cmd.docs.list.files_count": "{{.Count}} files",
- "cmd.docs.list.coverage_label": "Coverage",
- "cmd.docs.list.coverage_summary": "{{.WithDocs}} with docs, {{.WithoutDocs}} without",
-
- "cmd.docs.sync.short": "Sync documentation to core-php/docs/packages/",
- "cmd.docs.sync.long": "Sync documentation from all repos to a central location.\n\nCopies docs/ directories from each package to core-php/docs/packages/\nfor unified documentation builds.",
- "cmd.docs.sync.flag.registry": "Path to repos.yaml (auto-detected if not specified)",
- "cmd.docs.sync.flag.dry_run": "Show what would be synced without copying",
- "cmd.docs.sync.flag.output": "Output directory (default: core-php/docs/packages)",
- "cmd.docs.sync.no_docs_found": "No documentation found in any repos.",
- "cmd.docs.sync.found_label": "Found",
- "cmd.docs.sync.repos_with_docs": "{{.Count}} repo(s) with docs/ directories",
- "cmd.docs.sync.files_count": "({{.Count}} files)",
- "cmd.docs.sync.total_label": "Total:",
- "cmd.docs.sync.total_summary": "{{.Files}} files from {{.Repos}} repos → {{.Output}}",
- "cmd.docs.sync.dry_run_notice": "Dry run - no files copied",
- "cmd.docs.sync.confirm": "Sync?",
- "cmd.docs.sync.done_label": "Done:",
- "cmd.docs.sync.synced_packages": "Synced {{.Count}} packages",
-
- "cmd.docs.error.load_registry": "failed to load registry",
- "cmd.docs.error.scan_directory": "failed to scan directory",
-
- "cmd.pkg.short": "Package management for core-* repos",
- "cmd.pkg.long": "Manage host-uk/core-* packages and repositories.\n\nCommands:\n search Search GitHub for packages\n install Clone a package from GitHub\n list List installed packages\n update Update installed packages\n outdated Check for outdated packages",
- "cmd.pkg.no_description": "(no description)",
-
- "cmd.pkg.search.short": "Search GitHub for packages",
- "cmd.pkg.search.long": "Searches GitHub for repositories matching a pattern.\nUses gh CLI for authenticated search. Results are cached for 1 hour.\n\nExamples:\n core pkg search # List all host-uk repos\n core pkg search --pattern 'core-*' # Search for core-* repos\n core pkg search --org mycompany # Search different org\n core pkg search --refresh # Bypass cache",
- "cmd.pkg.search.flag.org": "GitHub organization (default: host-uk)",
- "cmd.pkg.search.flag.pattern": "Repo name pattern (* for wildcard)",
- "cmd.pkg.search.flag.type": "Filter by type in name (mod, services, plug, website)",
- "cmd.pkg.search.flag.limit": "Max results (default 50)",
- "cmd.pkg.search.flag.refresh": "Bypass cache and fetch fresh data",
- "cmd.pkg.search.cache_label": "Cache:",
- "cmd.pkg.search.note_label": "Note:",
- "cmd.pkg.search.fetching_label": "Fetching:",
- "cmd.pkg.search.gh_token_warning": "GH_TOKEN env var is set - this may cause auth issues",
- "cmd.pkg.search.gh_token_unset": "Unset it with: unset GH_TOKEN",
- "cmd.pkg.search.no_repos_found": "No repositories found matching pattern.",
- "cmd.pkg.search.found_repos": "Found {{.Count}} repositories:",
- "cmd.pkg.search.private_label": "[private]",
- "cmd.pkg.search.install_with": "Install with:",
-
- "cmd.pkg.install.short": "Clone a package from GitHub",
- "cmd.pkg.install.long": "Clones a repository from GitHub.\n\nExamples:\n core pkg install host-uk/core-php\n core pkg install host-uk/core-tenant --dir ./packages\n core pkg install host-uk/core-admin --add",
- "cmd.pkg.install.flag.dir": "Target directory (default: ./packages or current dir)",
- "cmd.pkg.install.flag.add": "Add to repos.yaml registry",
- "cmd.pkg.install.skip_label": "Skip:",
- "cmd.pkg.install.already_exists": "{{.Name}} already exists at {{.Path}}",
- "cmd.pkg.install.installing_label": "Installing:",
- "cmd.pkg.install.target_label": "Target:",
- "cmd.pkg.install.cloning": "Cloning",
- "cmd.pkg.install.add_to_registry": "add to registry",
- "cmd.pkg.install.added_to_registry": "added to repos.yaml",
- "cmd.pkg.install.done_label": "Done:",
- "cmd.pkg.install.installed": "Installed {{.Name}}",
-
- "cmd.pkg.list.short": "List installed packages",
- "cmd.pkg.list.long": "Lists all packages in the current workspace.\n\nReads from repos.yaml or scans for git repositories.\n\nExamples:\n core pkg list",
- "cmd.pkg.list.title": "Installed Packages",
- "cmd.pkg.list.no_packages": "No packages in registry.",
- "cmd.pkg.list.total_label": "Total:",
- "cmd.pkg.list.summary": "{{.Installed}} installed, {{.Missing}} missing",
- "cmd.pkg.list.install_missing": "Install missing:",
-
- "cmd.pkg.update.short": "Update installed packages",
- "cmd.pkg.update.long": "Pulls latest changes for installed packages.\n\nExamples:\n core pkg update core-php # Update specific package\n core pkg update --all # Update all packages",
- "cmd.pkg.update.flag.all": "Update all packages",
- "cmd.pkg.update.update_label": "Update:",
- "cmd.pkg.update.updating": "Updating {{.Count}} package(s)",
- "cmd.pkg.update.not_installed": "not installed",
- "cmd.pkg.update.up_to_date": "up to date",
- "cmd.pkg.update.done_label": "Done:",
- "cmd.pkg.update.summary": "{{.Updated}} updated, {{.Skipped}} skipped, {{.Failed}} failed",
-
- "cmd.pkg.outdated.short": "Check for outdated packages",
- "cmd.pkg.outdated.long": "Checks which packages have unpulled commits.\n\nExamples:\n core pkg outdated",
- "cmd.pkg.outdated.outdated_label": "Outdated:",
- "cmd.pkg.outdated.checking": "Checking for updates...",
- "cmd.pkg.outdated.commits_behind": "{{.Count}} commits behind",
- "cmd.pkg.outdated.done_label": "Done:",
- "cmd.pkg.outdated.all_up_to_date": "All packages up to date",
- "cmd.pkg.outdated.summary_label": "Summary:",
- "cmd.pkg.outdated.summary": "{{.Outdated}} outdated, {{.UpToDate}} up to date",
- "cmd.pkg.outdated.update_with": "Update with:",
-
- "cmd.pkg.error.gh_not_authenticated": "gh CLI not authenticated. Run: gh auth login",
- "cmd.pkg.error.auth_failed": "authentication failed - try: unset GH_TOKEN && gh auth login",
- "cmd.pkg.error.search_failed": "search failed: %s",
- "cmd.pkg.error.parse_results": "failed to parse results: %w",
- "cmd.pkg.error.repo_required": "repository is required (e.g., core pkg install host-uk/core-php)",
- "cmd.pkg.error.invalid_repo_format": "invalid repo format: use org/repo (e.g., host-uk/core-php)",
- "cmd.pkg.error.create_directory": "failed to create directory: %w",
- "cmd.pkg.error.no_repos_yaml": "no repos.yaml found",
- "cmd.pkg.error.no_repos_yaml_workspace": "no repos.yaml found - run from workspace directory",
- "cmd.pkg.error.load_registry": "failed to load registry: %w",
- "cmd.pkg.error.specify_package": "specify package name or use --all",
-
- "cmd.ci.short": "Publish releases (dry-run by default)",
- "cmd.ci.long": "Publishes pre-built artifacts from dist/ to configured targets.\nRun 'core build' first to create artifacts.\n\nSAFE BY DEFAULT: Runs in dry-run mode unless --we-are-go-for-launch is specified.\n\nConfiguration: .core/release.yaml",
-
- "cmd.ci.init.short": "Initialize release configuration",
- "cmd.ci.init.long": "Creates a .core/release.yaml configuration file interactively.",
- "cmd.ci.init.config_exists": "Configuration already exists at",
- "cmd.ci.init.overwrite_prompt": "Overwrite? [y/N]: ",
- "cmd.ci.init.creating": "Creating release configuration",
- "cmd.ci.init.project_name": "Project name",
- "cmd.ci.init.github_repo": "GitHub repository (owner/repo):",
- "cmd.ci.init.config_written": "Configuration written to",
-
- "cmd.ci.changelog.short": "Generate changelog",
- "cmd.ci.changelog.long": "Generates a changelog from conventional commits.",
- "cmd.ci.changelog.flag.from": "Starting ref (default: previous tag)",
- "cmd.ci.changelog.flag.to": "Ending ref (default: HEAD)",
-
- "cmd.ci.version.short": "Show or set version",
- "cmd.ci.version.long": "Shows the determined version or validates a version string.",
-
- "cmd.ci.release.short": "Create a release",
-
- "cmd.ci.flag.go_for_launch": "Actually publish (default is dry-run for safety)",
- "cmd.ci.flag.version": "Version to release (e.g., v1.2.3)",
- "cmd.ci.flag.draft": "Create release as a draft",
- "cmd.ci.flag.prerelease": "Mark release as a prerelease",
-
- "cmd.ci.publishing": "Publishing release",
- "cmd.ci.dry_run_hint": "(dry-run) use --we-are-go-for-launch to publish",
- "cmd.ci.go_for_launch": "GO FOR LAUNCH",
- "cmd.ci.publish_completed": "Publish completed!",
-
- "cmd.ci.label.ci": "CI:",
- "cmd.ci.label.init": "Init:",
- "cmd.ci.label.note": "Note:",
- "cmd.ci.label.error": "Error:",
- "cmd.ci.label.success": "Success:",
- "cmd.ci.label.version": "Version:",
- "cmd.ci.label.artifacts": "Artifacts:",
- "cmd.ci.label.published": "Published:",
-
- "cmd.ci.error.working_dir": "failed to get working directory",
- "cmd.ci.error.load_config": "failed to load config",
- "cmd.ci.error.write_config": "failed to write config",
- "cmd.ci.error.no_publishers": "no publishers configured in .core/release.yaml",
- "cmd.ci.error.generate_changelog": "failed to generate changelog",
- "cmd.ci.error.determine_version": "failed to determine version",
-
- "cmd.sdk.short": "SDK validation and API compatibility tools",
- "cmd.sdk.long": "Tools for validating OpenAPI specs and checking API compatibility.\nTo generate SDKs, use: core build sdk\n\nCommands:\n diff Check for breaking API changes\n validate Validate OpenAPI spec syntax",
-
- "cmd.sdk.diff.short": "Check for breaking API changes",
- "cmd.sdk.diff.long": "Check for breaking API changes between spec versions.\n\nCompares a base spec (version tag or file) against the current spec\nand reports any breaking changes that would affect API consumers.",
- "cmd.sdk.diff.flag.base": "Base spec (version tag or file)",
- "cmd.sdk.diff.flag.spec": "Current spec file",
- "cmd.sdk.diff.label": "SDK Diff:",
- "cmd.sdk.diff.checking": "Checking for breaking changes",
- "cmd.sdk.diff.base_label": "Base:",
- "cmd.sdk.diff.current_label": "Current:",
- "cmd.sdk.diff.breaking": "Breaking:",
- "cmd.sdk.diff.error.base_required": "--base is required (version tag or file path)",
-
- "cmd.sdk.validate.short": "Validate OpenAPI spec",
- "cmd.sdk.validate.long": "Validate OpenAPI spec syntax.\n\nChecks that the OpenAPI specification file is valid and well-formed.",
- "cmd.sdk.validate.flag.spec": "Path to OpenAPI spec file",
- "cmd.sdk.validate.validating": "Validating OpenAPI spec",
- "cmd.sdk.validate.spec_label": "Spec:",
- "cmd.sdk.validate.valid": "Spec is valid",
-
- "cmd.sdk.label.sdk": "SDK:",
- "cmd.sdk.label.ok": "OK:",
- "cmd.sdk.label.error": "Error:",
- "cmd.sdk.error.working_dir": "failed to get working directory",
-
- "cmd.test.short": "Run tests with coverage",
- "cmd.test.long": "Runs Go tests with coverage reporting.\n\nSets MACOSX_DEPLOYMENT_TARGET=26.0 to suppress linker warnings on macOS.\n\nExamples:\n core test # Run all tests with coverage summary\n core test --verbose # Show test output as it runs\n core test --coverage # Show detailed per-package coverage\n core test --pkg ./pkg/... # Test specific packages\n core test --run TestName # Run specific test by name\n core test --short # Skip long-running tests\n core test --race # Enable race detector\n core test --json # Output JSON for CI/agents",
- "cmd.test.running": "Running tests",
- "cmd.test.all_passed": "All tests passed",
- "cmd.test.tests_failed": "Tests failed",
- "cmd.test.passed": "{{.Count}} passed",
- "cmd.test.failed": "{{.Count}} failed",
- "cmd.test.skipped": "{{.Count}} skipped",
- "cmd.test.failed_packages": "Failed packages:",
- "cmd.test.coverage_by_package": "Coverage by package:",
-
- "cmd.test.flag.verbose": "Show test output as it runs (-v)",
- "cmd.test.flag.coverage": "Show detailed per-package coverage",
- "cmd.test.flag.short": "Skip long-running tests (-short)",
- "cmd.test.flag.pkg": "Package pattern to test (default: ./...)",
- "cmd.test.flag.run": "Run only tests matching this regex (-run)",
- "cmd.test.flag.race": "Enable race detector (-race)",
- "cmd.test.flag.json": "Output JSON for CI/agents",
-
- "cmd.test.label.test": "Test:",
- "cmd.test.label.package": "Package:",
- "cmd.test.label.filter": "Filter:",
- "cmd.test.label.coverage": "Coverage:",
- "cmd.test.label.average": "Average",
-
- "cmd.test.error.no_go_mod": "no go.mod found - run from a Go project directory",
- "cmd.test.error.tests_failed": "tests failed",
-
- "error.not_found": "Not found: {{.Item}}",
- "error.invalid": "Invalid: {{.Item}}",
- "error.permission": "Permission denied: {{.Item}}",
- "error.timeout": "Operation timed out",
- "error.network": "Network error: {{.Message}}",
- "error.gh_not_found": "'gh' CLI not found. Install from https://cli.github.com/",
- "error.registry_not_found": "No repos.yaml found",
- "error.repo_not_found": "Repository '{{.Name}}' not found",
-
- "label.status": "Status",
- "label.branch": "Branch",
- "label.commit": "Commit",
- "label.message": "Message",
- "label.author": "Author",
- "label.date": "Date",
- "label.duration": "Duration",
- "label.coverage": "Coverage",
- "label.package": "Package",
- "label.registry": "Registry",
- "label.scanning": "Scanning",
- "label.total": "Total",
-
- "lang.en": "English",
- "lang.de": "German",
- "lang.es": "Spanish",
- "lang.fr": "French",
- "lang.zh": "Chinese"
}
diff --git a/pkg/i18n/locales/en_GB.json b/pkg/i18n/locales/en_GB.json
index 3fece7f..c9a23d6 100644
--- a/pkg/i18n/locales/en_GB.json
+++ b/pkg/i18n/locales/en_GB.json
@@ -28,1487 +28,229 @@
"leave": { "base": "leave", "past": "left", "gerund": "leaving" },
"spend": { "base": "spend", "past": "spent", "gerund": "spending" },
"pay": { "base": "pay", "past": "paid", "gerund": "paying" },
- "sell": { "base": "sell", "past": "sold", "gerund": "selling" }
+ "sell": { "base": "sell", "past": "sold", "gerund": "selling" },
+ "commit": { "base": "commit", "past": "committed", "gerund": "committing" },
+ "stop": { "base": "stop", "past": "stopped", "gerund": "stopping" },
+ "scan": { "base": "scan", "past": "scanned", "gerund": "scanning" },
+ "format": { "base": "format", "past": "formatted", "gerund": "formatting" },
+ "set": { "base": "set", "past": "set", "gerund": "setting" },
+ "put": { "base": "put", "past": "put", "gerund": "putting" },
+ "cut": { "base": "cut", "past": "cut", "gerund": "cutting" },
+ "hit": { "base": "hit", "past": "hit", "gerund": "hitting" },
+ "sit": { "base": "sit", "past": "sat", "gerund": "sitting" },
+ "split": { "base": "split", "past": "split", "gerund": "splitting" },
+ "shut": { "base": "shut", "past": "shut", "gerund": "shutting" }
},
"noun": {
- "file": { "one": "file", "other": "files", "gender": "neuter" },
- "repo": { "one": "repo", "other": "repos", "gender": "neuter" },
- "repository": { "one": "repository", "other": "repositories", "gender": "neuter" },
- "commit": { "one": "commit", "other": "commits", "gender": "neuter" },
- "branch": { "one": "branch", "other": "branches", "gender": "neuter" },
- "change": { "one": "change", "other": "changes", "gender": "neuter" },
- "item": { "one": "item", "other": "items", "gender": "neuter" },
- "issue": { "one": "issue", "other": "issues", "gender": "neuter" },
- "task": { "one": "task", "other": "tasks", "gender": "neuter" },
- "user": { "one": "user", "other": "users", "gender": "neuter" },
- "person": { "one": "person", "other": "people", "gender": "neuter" },
- "child": { "one": "child", "other": "children", "gender": "neuter" }
+ "file": { "one": "file", "other": "files" },
+ "repo": { "one": "repo", "other": "repos" },
+ "repository": { "one": "repository", "other": "repositories" },
+ "commit": { "one": "commit", "other": "commits" },
+ "branch": { "one": "branch", "other": "branches" },
+ "change": { "one": "change", "other": "changes" },
+ "item": { "one": "item", "other": "items" },
+ "issue": { "one": "issue", "other": "issues" },
+ "task": { "one": "task", "other": "tasks" },
+ "person": { "one": "person", "other": "people" },
+ "child": { "one": "child", "other": "children" },
+ "package": { "one": "package", "other": "packages" },
+ "artifact": { "one": "artifact", "other": "artifacts" },
+ "vulnerability": { "one": "vulnerability", "other": "vulnerabilities" },
+ "dependency": { "one": "dependency", "other": "dependencies" },
+ "directory": { "one": "directory", "other": "directories" },
+ "category": { "one": "category", "other": "categories" },
+ "query": { "one": "query", "other": "queries" }
},
"article": {
"indefinite": { "default": "a", "vowel": "an" },
"definite": "the"
- }
- },
- "common": {
- "prompt": {
- "yes": "y",
- "no": "n",
- "yes_full": "yes",
- "no_full": "no",
- "abort": "Operation aborted",
- "cancel": "Cancelled",
- "continue": "Continue?",
- "proceed": "Proceed?",
- "confirm": "Are you sure?",
- "overwrite": "Overwrite?",
- "delete": "Delete?",
- "save": "Save?",
- "discard": "Discard changes?"
},
- "label": {
- "error": "Error:",
- "done": "Done:",
- "status": "Status:",
- "version": "Version:",
- "summary": "Summary:",
- "image": "Image:",
- "success": "Success:",
- "warning": "Warning:",
- "note": "Note:",
- "registry": "Registry:",
- "current": "Current:",
- "total": "Total:",
- "coverage": "Coverage:",
- "install": "Install:",
- "path": "Path:",
- "test": "Test:",
- "package": "Package:",
- "spec": "Spec:",
- "template": "Template:",
- "fix": "Fix:",
- "skip": "Skip:",
- "started": "Started:",
- "target": "Target:",
- "filter": "Filter:",
- "project": "Project:",
- "url": "URL:",
- "repo": "Repo"
- },
- "status": {
- "running": "Running",
- "stopped": "Stopped",
- "dirty": "dirty",
- "synced": "synced",
+ "word": {
+ "url": "URL",
+ "id": "ID",
+ "ok": "OK",
+ "ci": "CI",
+ "qa": "QA",
+ "php": "PHP",
+ "sdk": "SDK",
+ "html": "HTML",
+ "cgo": "CGO",
+ "pid": "PID",
+ "cpus": "CPUs",
+ "ssh": "SSH",
+ "ssl": "SSL",
+ "api": "API",
+ "pr": "PR",
+ "vite": "Vite",
+ "pnpm": "pnpm",
+ "app_url": "app URL",
+ "blocked_by": "blocked by",
+ "claimed_by": "claimed by",
+ "related_files": "related files",
"up_to_date": "up to date",
- "installing": "Installing",
- "cloning": "Cloning"
+ "dry_run": "dry run",
+ "go_mod": "go.mod"
},
- "error": {
- "failed": "Failed to {{.Action}}",
- "not_found": "{{.Item}} not found",
- "no_items": "No {{.Items}} found"
- },
- "success": {
- "completed": "{{.Action}} completed successfully",
- "passed": "{{.Action}} passed"
- },
- "progress": {
- "running": "Running {{.Task}}",
- "checking": "Checking {{.Item}}",
- "checking_updates": "Checking for updates..."
- },
- "flag": {
- "registry": "Path to repos.yaml (auto-detected if not specified)",
- "spec": "Path to OpenAPI spec file",
- "diff": "Show diff of changes",
- "verbose": "Verbose output",
- "coverage": "Show detailed per-package coverage",
- "json": "Output in JSON format",
- "tag": "Image tag (default: latest)",
- "follow": "Follow log output",
- "fix": "Auto-fix issues where possible",
- "pkg": "Package to test (default: ./...)"
- },
- "count": {
- "failed": "{{.Count}} failed",
- "passed": "{{.Count}} passed",
- "skipped": "{{.Count}} skipped",
- "pending": "{{.Count}} pending",
- "files": "{{.Count}} files",
- "commits": "{{.Count}} commit(s)",
- "repos_unpushed": "{{.Count}} repo(s) with unpushed commits:"
- },
- "result": {
- "all_passed": "All tests passed",
- "no_issues": "No issues found",
- "run_with_coverage": "Run tests with coverage"
- },
- "hint": {
- "install_with": "Install with:",
- "fix_deps": "composer update && npm update"
+ "punct": {
+ "label": ":",
+ "progress": "..."
}
},
- "cli": {
- "aborted": "Aborted",
- "cancelled": "Cancelled",
- "completed": "Completed",
- "count": {
- "commits": {
- "one": "{{.Count}} commit",
- "other": "{{.Count}} commits"
- },
- "items": {
- "one": "{{.Count}} item",
- "other": "{{.Count}} items"
- },
- "repos": {
- "one": "{{.Count}} repo",
- "other": "{{.Count}} repos"
- }
- },
- "done": "Done",
- "error": "Error",
- "fail": "FAIL",
- "failed": "Failed",
- "info": "Info",
- "ok": "OK",
- "pass": "PASS",
- "pending": "Pending",
- "skip": "Skipped",
- "success": "Success",
- "time": {
- "day_ago": "1 day ago",
- "days_ago": "{{.Count}} days ago",
- "hour_ago": "1 hour ago",
- "hours_ago": "{{.Count}} hours ago",
- "just_now": "just now",
- "minute_ago": "1 minute ago",
- "minutes_ago": "{{.Count}} minutes ago",
- "seconds_ago": "{{.Count}} seconds ago",
- "week_ago": "1 week ago",
- "weeks_ago": "{{.Count}} weeks ago"
- },
- "warning": "Warning"
+ "prompt": {
+ "yes": "y",
+ "no": "n",
+ "continue": "Continue?",
+ "proceed": "Proceed?",
+ "confirm": "Are you sure?",
+ "overwrite": "Overwrite?",
+ "discard": "Discard changes?"
+ },
+ "time": {
+ "just_now": "just now",
+ "ago": {
+ "second": { "one": "{{.Count}} second ago", "other": "{{.Count}} seconds ago" },
+ "minute": { "one": "{{.Count}} minute ago", "other": "{{.Count}} minutes ago" },
+ "hour": { "one": "{{.Count}} hour ago", "other": "{{.Count}} hours ago" },
+ "day": { "one": "{{.Count}} day ago", "other": "{{.Count}} days ago" },
+ "week": { "one": "{{.Count}} week ago", "other": "{{.Count}} weeks ago" }
+ }
},
"cmd": {
"ai": {
- "claude": {
- "config": {
- "short": "Manage Claude configuration"
- },
- "long": "Tools for working with Claude Code.\n\nCommands:\n run Run Claude in the current directory\n config Manage Claude configuration",
- "run": {
- "short": "Run Claude Code in the current directory"
- },
- "short": "Claude Code integration"
- },
- "label": {
- "blocked_by": "Blocked by:",
- "claimed_by": "Claimed by:",
- "created": "Created:",
- "description": "Description:",
- "id": "ID:",
- "labels": "Labels:",
- "priority": "Priority:",
- "related_files": "Related files:",
- "title": "Title:"
- },
- "long": "Manage tasks from the core-agentic service for AI-assisted development.\n\nCommands:\n tasks List tasks (filterable by status, priority, labels)\n task View task details or auto-select highest priority\n task:update Update task status or progress\n task:complete Mark task as completed or failed\n task:commit Create git commit with task reference\n task:pr Create GitHub PR linked to task\n claude Claude Code integration\n\nWorkflow:\n core ai tasks # List pending tasks\n core ai task --auto --claim # Auto-select and claim a task\n core ai task:commit -m 'msg' # Commit with task reference\n core ai task:complete # Mark task done",
- "priority": {
- "critical": "CRITICAL",
- "high": "HIGH",
- "low": "LOW",
- "medium": "MEDIUM"
- },
"short": "AI agent task management",
- "status": {
- "blocked": "blocked",
- "completed": "completed",
- "in_progress": "in_progress",
- "pending": "pending"
- },
- "task": {
- "claiming": "Claiming task...",
- "flag": {
- "auto": "Auto-select highest priority pending task",
- "claim": "Claim the task after showing details",
- "context": "Show gathered context for AI collaboration"
- },
- "id_required": "task ID required (or use --auto)",
- "long": "Shows details of a specific task or auto-selects the highest priority task.\n\nExamples:\n core ai task abc123 # Show task details\n core ai task abc123 --claim # Show and claim the task\n core ai task abc123 --context # Show task with gathered context\n core ai task --auto # Auto-select highest priority pending task",
- "no_pending": "No pending tasks available.",
- "short": "Show task details or auto-select a task"
- },
- "task_commit": {
- "committed": "Committed:",
- "creating": "Creating commit for task {{.ID}}...",
- "flag": {
- "message": "Commit message (without task reference)",
- "push": "Push changes after committing",
- "scope": "Scope for the commit type (e.g., auth, api, ui)"
- },
- "long": "Creates a git commit with a task reference and co-author attribution.\n\nCommit message format:\n feat(scope): description\n\n Task: #123\n Co-Authored-By: Claude \n\nExamples:\n core ai task:commit abc123 --message 'add user authentication'\n core ai task:commit abc123 -m 'fix login bug' --scope auth\n core ai task:commit abc123 -m 'update docs' --push",
- "message_required": "commit message required (--message or -m)",
- "no_changes": "No uncommitted changes to commit.",
- "pushing": "Pushing changes...",
- "short": "Auto-commit changes with task reference"
- },
- "task_complete": {
- "failed": "Task {{.ID}} marked as failed",
- "flag": {
- "error": "Error message if failed",
- "failed": "Mark the task as failed",
- "output": "Summary of the completed work"
- },
- "long": "Marks a task as completed with optional output and artifacts.\n\nExamples:\n core ai task:complete abc123 --output 'Feature implemented'\n core ai task:complete abc123 --failed --error 'Build failed'",
- "short": "Mark a task as completed"
- },
- "task_pr": {
- "branch_error": "cannot create PR from {{.Branch}} branch; create a feature branch first",
- "created": "Pull request created!",
- "creating": "Creating pull request...",
- "flag": {
- "base": "Base branch (defaults to main)",
- "draft": "Create as draft PR",
- "labels": "Labels to add (comma-separated)",
- "title": "PR title (defaults to task title)"
- },
- "long": "Creates a GitHub pull request linked to a task.\n\nRequires the GitHub CLI (gh) to be installed and authenticated.\n\nExamples:\n core ai task:pr abc123\n core ai task:pr abc123 --title 'Add authentication feature'\n core ai task:pr abc123 --draft --labels 'enhancement,needs-review'\n core ai task:pr abc123 --base develop",
- "pushing_branch": "Pushing branch {{.Branch}}...",
- "short": "Create a pull request for a task"
- },
- "task_update": {
- "flag": {
- "notes": "Notes about the update",
- "progress": "Progress percentage (0-100)",
- "status": "New status (pending, in_progress, completed, blocked)"
- },
- "flag_required": "at least one of --status, --progress, or --notes required",
- "long": "Updates a task's status, progress, or adds notes.\n\nExamples:\n core ai task:update abc123 --status in_progress\n core ai task:update abc123 --progress 50 --notes 'Halfway done'",
- "short": "Update task status or progress"
- },
- "tasks": {
- "flag": {
- "labels": "Filter by labels (comma-separated)",
- "limit": "Max number of tasks to return",
- "priority": "Filter by priority (critical, high, medium, low)",
- "project": "Filter by project",
- "status": "Filter by status (pending, in_progress, completed, blocked)"
- },
- "found": "{{.Count}} task(s) found:",
- "hint": "Use 'core ai task ' to view details",
- "long": "Lists tasks from the core-agentic service.\n\nConfiguration is loaded from:\n 1. Environment variables (AGENTIC_TOKEN, AGENTIC_BASE_URL)\n 2. .env file in current directory\n 3. ~/.core/agentic.yaml\n\nExamples:\n core ai tasks\n core ai tasks --status pending --priority high\n core ai tasks --labels bug,urgent",
- "none_found": "No tasks found.",
- "short": "List available tasks from core-agentic"
- }
+ "claude.short": "Claude Code integration",
+ "task.short": "Show task details or auto-select a task",
+ "task.id_required": "task ID required (or use --auto)",
+ "task.no_pending": "No pending tasks available.",
+ "tasks.short": "List available tasks from core-agentic",
+ "task_commit.short": "Auto-commit changes with task reference",
+ "task_commit.no_changes": "No uncommitted changes to commit.",
+ "task_complete.short": "Mark a task as completed",
+ "task_pr.short": "Create a pull request for a task",
+ "task_pr.branch_error": "cannot create PR from {{.Branch}} branch; create a feature branch first",
+ "task_update.short": "Update task status or progress"
},
"build": {
- "building_project": "Building project",
- "built_artifacts": "Built {{.Count}} artifact(s)",
- "computing_checksums": "Computing checksums...",
- "creating_archives": "Creating archives...",
- "error": {
- "archive_failed": "archive failed",
- "checksum_failed": "checksum failed",
- "gpg_signing_failed": "GPG signing failed",
- "invalid_target": "invalid target format \"{{.Target}}\", expected OS/arch (e.g., linux/amd64)",
- "no_project_type": "no supported project type detected in {{.Dir}}\nSupported types: go (go.mod), wails (wails.json), node (package.json), php (composer.json)",
- "no_targets": "no valid targets specified",
- "node_not_implemented": "Node.js builder not yet implemented",
- "notarization_failed": "notarization failed",
- "php_not_implemented": "PHP builder not yet implemented",
- "signing_failed": "signing failed",
- "unsupported_type": "unsupported project type"
- },
- "flag": {
- "archive": "Create archives (tar.gz for linux/darwin, zip for windows)",
- "checksum": "Generate SHA256 checksums and CHECKSUMS.txt",
- "ci": "CI mode - minimal output with JSON artifact list at the end",
- "config": "Config file path (for linuxkit: YAML config, for docker: Dockerfile)",
- "format": "Output format for linuxkit (iso-bios, qcow2-bios, raw, vmdk)",
- "image": "Docker image name (e.g., host-uk/core-devops)",
- "no_sign": "Skip all code signing",
- "notarize": "Enable macOS notarization (requires Apple credentials)",
- "output": "Output directory for artifacts (default: dist)",
- "push": "Push Docker image after build",
- "targets": "Comma-separated OS/arch pairs (e.g., linux/amd64,darwin/arm64)",
- "type": "Builder type (go, wails, docker, linuxkit, taskfile) - auto-detected if not specified"
- },
- "from_path": {
- "compiling": "Compiling application...",
- "copying_files": "Copying application files...",
- "error": {
- "go_build": "go build failed",
- "go_mod_tidy": "go mod tidy failed",
- "invalid_path": "invalid path specified",
- "must_be_directory": "path specified must be a directory"
- },
- "flag": {
- "path": "The path to the static web application files"
- },
- "generating_template": "Generating application from template...",
- "short": "Build from a local directory",
- "starting": "Starting build from path:",
- "success": "Build successful! Executable created at:"
- },
- "label": {
- "archive": "Archive:",
- "binary": "Binary:",
- "build": "Build:",
- "checksum": "Checksum:",
- "ok": "OK:",
- "output": "Output:",
- "sign": "Sign:",
- "targets": "Targets:",
- "type": "Type:"
- },
- "long": "Builds the current project with automatic type detection.\nSupports Go, Wails, Docker, LinuxKit, and Taskfile projects.\nConfiguration can be provided via .core/build.yaml or command-line flags.\n\nExamples:\n core build # Auto-detect and build\n core build --type docker # Build Docker image\n core build --type linuxkit # Build LinuxKit image\n core build --type linuxkit --config linuxkit.yml --format qcow2-bios",
- "pwa": {
- "download_complete": "PWA download complete.",
- "downloading_to": "Downloading PWA to temporary directory:",
- "error": {
- "no_manifest_tag": "no tag found"
- },
- "flag": {
- "url": "The URL of the PWA to build"
- },
- "found_manifest": "Found manifest:",
- "no_manifest": "no manifest file found. Proceeding with basic site download.",
- "short": "Build from a live PWA URL",
- "starting": "Starting PWA build from URL:"
- },
- "sdk": {
- "complete": "SDK generation complete",
- "dry_run_mode": "(dry-run mode)",
- "flag": {
- "dry_run": "Show what would be generated without writing files",
- "lang": "Generate only this language (typescript, python, go, php)",
- "version": "Version to embed in generated SDKs"
- },
- "generated_label": "Generated:",
- "generating": "Generating SDKs",
- "label": "Build SDK:",
- "language_label": "Language:",
- "languages_label": "Languages:",
- "long": "Generates typed API clients from OpenAPI specifications.\nSupports TypeScript, Python, Go, and PHP.\n\nExamples:\n core build sdk # Generate all configured SDKs\n core build sdk --lang typescript # Generate only TypeScript SDK\n core build sdk --spec api.yaml # Use specific OpenAPI spec",
- "short": "Generate API SDKs from OpenAPI spec",
- "would_generate": "Would generate SDKs (dry-run)"
- },
"short": "Build projects with auto-detection and cross-compilation",
- "signing_binaries": "Signing binaries..."
+ "error.invalid_target": "invalid target format \"{{.Target}}\", expected OS/arch (e.g., linux/amd64)",
+ "error.no_project_type": "no supported project type detected in {{.Dir}}\nSupported types: go (go.mod), wails (wails.json), node (package.json), php (composer.json)",
+ "from_path.short": "Build from a local directory",
+ "pwa.short": "Build from a live PWA URL",
+ "sdk.short": "Generate API SDKs from OpenAPI spec"
},
"ci": {
- "changelog": {
- "flag": {
- "from": "Starting ref (default: previous tag)",
- "to": "Ending ref (default: HEAD)"
- },
- "long": "Generates a changelog from conventional commits.",
- "short": "Generate changelog"
- },
- "dry_run_hint": "(dry-run) use --we-are-go-for-launch to publish",
- "error": {
- "no_publishers": "no publishers configured in .core/release.yaml"
- },
- "flag": {
- "draft": "Create release as a draft",
- "go_for_launch": "Actually publish (default is dry-run for safety)",
- "prerelease": "Mark release as a prerelease",
- "version": "Version to release (e.g., v1.2.3)"
- },
- "go_for_launch": "GO FOR LAUNCH",
- "init": {
- "config_exists": "Configuration already exists at",
- "config_written": "Configuration written to",
- "creating": "Creating release configuration",
- "github_repo": "GitHub repository (owner/repo):",
- "long": "Creates a .core/release.yaml configuration file interactively.",
- "overwrite_prompt": "Overwrite? [y/N]: ",
- "project_name": "Project name",
- "short": "Initialize release configuration"
- },
- "label": {
- "artifacts": "Artifacts:",
- "ci": "CI:",
- "init": "Init:",
- "published": "Published:"
- },
- "long": "Publishes pre-built artifacts from dist/ to configured targets.\nRun 'core build' first to create artifacts.\n\nSAFE BY DEFAULT: Runs in dry-run mode unless --we-are-go-for-launch is specified.\n\nConfiguration: .core/release.yaml",
- "publish_completed": "Publish completed!",
- "publishing": "Publishing release",
- "release": {
- "short": "Create a release"
- },
"short": "Publish releases (dry-run by default)",
- "version": {
- "long": "Shows the determined version or validates a version string.",
- "short": "Show or set version"
- }
+ "dry_run_hint": "(dry-run) use --we-are-go-for-launch to publish",
+ "go_for_launch": "GO FOR LAUNCH",
+ "init.short": "Initialize release configuration",
+ "changelog.short": "Generate changelog",
+ "version.short": "Show or set version"
},
"dev": {
- "api": {
- "short": "Tools for managing service APIs"
- },
- "ci": {
- "failing": "{{.Count}} failing",
- "flag": {
- "branch": "Filter by branch",
- "failed": "Show only failed runs"
- },
- "long": "Fetches GitHub Actions workflow status for all repos.\nShows latest run status for each repo.\nRequires the 'gh' CLI to be installed and authenticated.",
- "no_ci": "{{.Count}} no CI",
- "passing": "{{.Count}} passing",
- "repos_checked": "{{.Count}} repos checked",
- "short": "Check CI status across all repos"
- },
- "commit": {
- "committing": "Committing dirty repos with Claude...",
- "failed": "Commit failed",
- "flag": {
- "all": "Commit all dirty repos without prompting"
- },
- "long": "Uses Claude to create commits for dirty repos.\nShows uncommitted changes and invokes Claude to generate commit messages.",
- "short": "Claude-assisted commits across repos"
- },
- "committed": "committed",
- "committing": "Committing",
- "confirm_claude_commit": "Have Claude commit these repos?",
- "done_succeeded": "Done: {{.Count}} succeeded",
- "health": {
- "ahead_label": "Ahead:",
- "behind_label": "Behind:",
- "dirty_label": "Dirty:",
- "errors": "errors",
- "errors_label": "Errors:",
- "flag": {
- "verbose": "Show detailed breakdown"
- },
- "long": "Shows a summary of repository health:\ntotal repos, dirty repos, unpushed commits, etc.",
- "more": "+{{.Count}} more",
- "repos": "repos",
- "short": "Quick health check across all repos",
- "to_pull": "to pull",
- "to_push": "to push"
- },
- "impact": {
- "analysis_for": "Impact analysis for",
- "changes_affect": "Changes to {{.Repo}} affect {{.Affected}}/{{.Total}} repos",
- "direct_dependents": "{{.Count}} direct dependent(s):",
- "long": "Analyzes the dependency graph to show which repos\nwould be affected by changes to the specified repo.",
- "no_dependents": "No repos depend on {{.Name}}",
- "requires_registry": "impact analysis requires repos.yaml with dependency information",
- "short": "Show impact of changing a repo",
- "transitive_dependents": "{{.Count}} transitive dependent(s):"
- },
- "issues": {
- "flag": {
- "assignee": "Filter by assignee (use @me for yourself)",
- "limit": "Max issues per repo"
- },
- "long": "Fetches open issues from GitHub for all repos in the registry.\nRequires the 'gh' CLI to be installed and authenticated.",
- "no_issues": "No open issues found.",
- "open_issues": "{{.Count}} open issue(s):",
- "short": "List open issues across all repos"
- },
- "long": "Manage multiple git repositories and GitHub integration.\n\nUses repos.yaml to discover repositories. Falls back to scanning\nthe current directory if no registry is found.\n\nGit Operations:\n work Combined status -> commit -> push workflow\n health Quick repo health summary\n commit Claude-assisted commit messages\n push Push repos with unpushed commits\n pull Pull repos behind remote\n\nGitHub Integration (requires gh CLI):\n issues List open issues across repos\n reviews List PRs awaiting review\n ci Check GitHub Actions status\n impact Analyse dependency impact\n\nDev Environment:\n install Download dev environment image\n boot Start dev environment VM\n stop Stop dev environment VM\n shell Open shell in dev VM\n status Check dev VM status",
- "modified": "{{.Count}} modified",
+ "short": "Multi-repo development workflow",
"no_changes": "No uncommitted changes found.",
"no_git_repos": "No git repositories found.",
- "pull": {
- "all_up_to_date": "All repos up to date. Nothing to pull.",
- "commits_behind": "{{.Count}} commit(s) behind",
- "done_pulled": "Done: {{.Count}} pulled",
- "flag": {
- "all": "Pull all repos, not just those behind"
- },
- "long": "Pulls updates for all repos.\nBy default only pulls repos that are behind. Use --all to pull all repos.",
- "pulling": "Pulling",
- "pulling_repos": "Pulling {{.Count}} repo(s):",
- "repos_behind": "{{.Count}} repo(s) behind upstream:",
- "short": "Pull updates across all repos"
- },
- "push": {
- "all_up_to_date": "All repos up to date. Nothing to push.",
- "confirm": "Push all?",
- "confirm_push": "Push {{.Commits}} commit(s) to {{.Repos}} repo(s)?",
- "diverged": "branch has diverged from remote",
- "diverged_help": "Some repos have diverged (local and remote have different commits).",
- "done_pushed": "Done: {{.Count}} pushed",
- "failed": "Push failed",
- "flag": {
- "force": "Skip confirmation prompt"
- },
- "long": "Pushes unpushed commits for all repos.\nShows repos with commits to push and confirms before pushing.",
- "nothing": "Nothing to push",
- "pull_and_retry": "Pull changes and retry push?",
- "short": "Push commits across all repos",
- "uncommitted_changes_commit": "You have uncommitted changes. Commit with Claude first?"
- },
- "repos_with_changes": "{{.Count}} repo(s) with uncommitted changes:",
- "reviews": {
- "approved": "{{.Count}} approved",
- "changes_requested": "{{.Count}} changes requested",
- "draft": "[draft]",
- "flag": {
- "all": "Show all PRs including drafts",
- "author": "Filter by PR author"
- },
- "long": "Fetches open PRs from GitHub for all repos in the registry.\nShows review status (approved, changes requested, pending).\nRequires the 'gh' CLI to be installed and authenticated.",
- "no_prs": "No open PRs found.",
- "open_prs": "{{.Count}} open PR(s)",
- "short": "List PRs needing review across all repos",
- "status_approved": "v approved",
- "status_changes": "* changes requested",
- "status_pending": "o pending review"
- },
- "scanning_label": "Scanning:",
- "short": "Multi-repo development workflow",
- "staged": "{{.Count}} staged",
- "status": {
- "ahead": "ahead",
- "behind": "behind",
- "clean": "clean",
- "conflict": "conflict",
- "diverged": "diverged"
- },
- "sync": {
- "long": "This command scans the 'pkg' directory for services and ensures that the\ntop-level public API for each service is in sync with its internal implementation.\nIt automatically generates the necessary Go files with type aliases.",
- "short": "Synchronizes public service APIs with internal implementations"
- },
- "untracked": "{{.Count}} untracked",
- "vm": {
- "already_installed": "Dev environment already installed",
- "boot": {
- "flag": {
- "cpus": "Number of CPUs (default: 2)",
- "fresh": "Stop existing and start fresh",
- "memory": "Memory in MB (default: 4096)"
- },
- "long": "Boots the dev environment VM.\n\nExamples:\n core dev boot\n core dev boot --memory 8192 --cpus 4\n core dev boot --fresh",
- "short": "Start the dev environment"
- },
- "booting": "Booting dev environment...",
- "check_updates": "Use {{.Command}} to check for updates",
- "claude": {
- "flag": {
- "auth": "Selective auth forwarding (gh,anthropic,ssh,git)",
- "model": "Model to use (opus, sonnet)",
- "no_auth": "Don't forward any auth credentials"
- },
- "long": "Starts a Claude Code session inside the dev environment sandbox.\n\nProvides isolation while forwarding selected credentials.\nAuto-boots the dev environment if not running.\n\nAuth options (default: all):\n gh - GitHub CLI auth\n anthropic - Anthropic API key\n ssh - SSH agent forwarding\n git - Git config (name, email)\n\nExamples:\n core dev claude\n core dev claude --model opus\n core dev claude --auth gh,anthropic\n core dev claude --no-auth",
- "short": "Start sandboxed Claude session"
- },
- "config_label": "Config:",
- "config_value": "{{.Memory}}MB, {{.CPUs}} CPUs",
- "connect_with": "Connect with: {{.Command}}",
- "container_label": "Container:",
- "cpus_label": "CPUs:",
- "downloading": "Downloading dev environment...",
- "downloading_update": "Downloading update...",
- "install": {
- "long": "Downloads the platform-specific dev environment image.\n\nThe image includes Go, PHP, Node.js, Python, Docker, and Claude CLI.\nDownloads are cached at ~/.core/images/\n\nExamples:\n core dev install",
- "short": "Download and install the dev environment image"
- },
- "install_with": "Install with: {{.Command}}",
- "installed_in": "Installed in {{.Duration}}",
- "installed_label": "Installed:",
- "installed_no": "No",
- "installed_yes": "Yes",
- "latest_label": "Latest:",
- "memory_label": "Memory:",
- "not_installed": "dev environment not installed (run 'core dev install' first)",
- "not_running": "Dev environment is not running",
- "progress_label": "Progress:",
- "run_to_update": "Run {{.Command}} to update",
- "running": "Dev environment running",
- "serve": {
- "flag": {
- "path": "Subdirectory to serve",
- "port": "Port to serve on (default: 8000)"
- },
- "long": "Mounts the current project into the dev environment and starts a dev server.\n\nAuto-detects the appropriate serve command based on project files.\n\nExamples:\n core dev serve\n core dev serve --port 3000\n core dev serve --path public",
- "short": "Mount project and start dev server"
- },
- "shell": {
- "flag": {
- "console": "Use serial console instead of SSH"
- },
- "long": "Opens an interactive shell in the dev environment.\n\nUses SSH by default, or serial console with --console.\n\nExamples:\n core dev shell\n core dev shell --console\n core dev shell -- ls -la",
- "short": "Connect to the dev environment"
- },
- "ssh_port": "SSH port:",
- "start_with": "Start with: {{.Command}}",
- "status": {
- "long": "Shows the current status of the dev environment.\n\nExamples:\n core dev vm-status",
- "short": "Show dev environment status"
- },
- "status_title": "Dev Environment Status",
- "stop": {
- "long": "Stops the running dev environment VM.\n\nExamples:\n core dev stop",
- "short": "Stop the dev environment"
- },
- "stopping": "Stopping dev environment...",
- "stopping_current": "Stopping current instance...",
- "test": {
- "flag": {
- "name": "Run named test command from .core/test.yaml"
- },
- "long": "Runs tests in the dev environment.\n\nAuto-detects the test command based on project files, or uses .core/test.yaml.\n\nExamples:\n core dev test\n core dev test --name integration\n core dev test -- go test -v ./...",
- "short": "Run tests in the dev environment"
- },
- "up_to_date": "Already up to date",
- "update": {
- "flag": {
- "apply": "Download and apply the update"
- },
- "long": "Checks for dev environment updates and optionally applies them.\n\nExamples:\n core dev update\n core dev update --apply",
- "short": "Check for and apply updates"
- },
- "update_available": "Update available",
- "updated_in": "Updated in {{.Duration}}",
- "uptime_label": "Uptime:"
- },
- "work": {
- "all_up_to_date": "All repos up to date.",
- "error_prefix": "error:",
- "flag": {
- "commit": "Use Claude to commit dirty repos before pushing",
- "status": "Show status only, don't push"
- },
- "long": "Manage git status, commits, and pushes across multiple repositories.\n\nReads repos.yaml to discover repositories and their relationships.\nShows status, optionally commits with Claude, and pushes changes.",
- "short": "Multi-repo git operations",
- "table_ahead": "Ahead",
- "table_modified": "Modified",
- "table_staged": "Staged",
- "table_untracked": "Untracked",
- "use_commit_flag": "Use --commit to have Claude create commits"
- }
+ "confirm_claude_commit": "Have Claude commit these repos?",
+ "health.short": "Quick health check across all repos",
+ "commit.short": "Claude-assisted commits across repos",
+ "push.short": "Push commits across all repos",
+ "push.diverged": "branch has diverged from remote",
+ "push.diverged_help": "Some repos have diverged (local and remote have different commits).",
+ "push.uncommitted_changes_commit": "You have uncommitted changes. Commit with Claude first?",
+ "pull.short": "Pull updates across all repos",
+ "work.short": "Multi-repo git operations",
+ "work.use_commit_flag": "Use --commit to have Claude create commits",
+ "issues.short": "List open issues across all repos",
+ "reviews.short": "List PRs needing review across all repos",
+ "ci.short": "Check CI status across all repos",
+ "impact.short": "Show impact of changing a repo",
+ "impact.requires_registry": "impact analysis requires repos.yaml with dependency information",
+ "sync.short": "Synchronizes public service APIs with internal implementations",
+ "vm.short": "Dev environment commands",
+ "vm.not_installed": "dev environment not installed (run 'core dev install' first)",
+ "vm.not_running": "Dev environment is not running"
},
"docs": {
- "list": {
- "coverage_summary": "{{.WithDocs}} with docs, {{.WithoutDocs}} without",
- "header": {
- "changelog": "CHANGELOG",
- "claude": "CLAUDE",
- "docs": "docs/",
- "readme": "README"
- },
- "long": "List documentation files for all repos in the workspace.\n\nShows README.md, CLAUDE.md, CHANGELOG.md, and docs/ directory status\nfor each repository.",
- "short": "List documentation across repos"
- },
- "long": "Manage documentation across all repos.\nScan for docs, check coverage, and sync to core-php/docs/packages/.",
"short": "Documentation management",
- "sync": {
- "confirm": "Sync?",
- "dry_run_notice": "Dry run - no files copied",
- "files_count": "({{.Count}} files)",
- "flag": {
- "dry_run": "Show what would be synced without copying",
- "output": "Output directory (default: core-php/docs/packages)"
- },
- "found_label": "Found",
- "long": "Sync documentation from all repos to a central location.\n\nCopies docs/ directories from each package to core-php/docs/packages/\nfor unified documentation builds.",
- "no_docs_found": "No documentation found in any repos.",
- "repos_with_docs": "{{.Count}} repo(s) with docs/ directories",
- "short": "Sync documentation to core-php/docs/packages/",
- "synced_packages": "Synced {{.Count}} packages",
- "total_summary": "{{.Files}} files from {{.Repos}} repos → {{.Output}}"
- }
+ "list.short": "List documentation across repos",
+ "sync.short": "Sync documentation to core-php/docs/packages/"
},
"doctor": {
- "check": {
- "claude": {
- "description": "AI-assisted development",
- "name": "Claude Code"
- },
- "composer": {
- "description": "PHP dependencies",
- "name": "Composer"
- },
- "docker": {
- "description": "Container runtime",
- "name": "Docker"
- },
- "gh": {
- "description": "GitHub integration (issues, PRs, CI)",
- "name": "GitHub CLI"
- },
- "git": {
- "description": "Version control",
- "name": "Git"
- },
- "node": {
- "description": "Frontend builds",
- "name": "Node.js"
- },
- "php": {
- "description": "Laravel packages",
- "name": "PHP"
- },
- "pnpm": {
- "description": "Fast package manager",
- "name": "pnpm"
- }
- },
- "cli_auth": "CLI authenticated",
- "cli_auth_missing": "CLI authentication - run: gh auth login",
- "github": "GitHub Access:",
- "install_linux_gh": "# GitHub CLI: https://cli.github.com/",
- "install_linux_git": "# Git: apt install git",
- "install_linux_header": "# Install via your package manager or:",
- "install_linux_node": "# Node: https://nodejs.org/",
- "install_linux_php": "# PHP: apt install php8.3-cli",
- "install_linux_pnpm": "# pnpm: npm install -g pnpm",
- "install_macos": "brew install git gh php composer node pnpm docker",
- "install_macos_cask": "brew install --cask claude",
- "install_missing": "Install missing tools:",
- "install_other": "See documentation for your OS",
- "issues": "Doctor: {{.Count}} issues found",
- "issues_error": "{{.Count}} required tools missing",
- "long": "Checks that all required tools are installed and configured.\nRun this before 'core setup' to ensure your environment is ready.",
- "no_repos_yaml": "No repos.yaml found (run from workspace directory)",
- "optional": "Optional:",
- "ready": "Doctor: Environment ready",
- "repos_cloned": "{{.Cloned}}/{{.Total}} repos cloned",
- "repos_yaml_found": "Found repos.yaml at {{.Path}}",
- "required": "Required:",
"short": "Check development environment",
- "ssh_found": "SSH key found",
- "ssh_missing": "SSH key missing - run: ssh-keygen && gh ssh-key add",
- "verbose_flag": "Show detailed version information",
- "workspace": "Workspace:"
+ "ready": "Doctor: Environment ready",
+ "no_repos_yaml": "No repos.yaml found (run from workspace directory)",
+ "install_missing": "Install missing tools:",
+ "install_macos": "brew install git gh php composer node pnpm docker",
+ "ssh_missing": "SSH key missing - run: ssh-keygen && gh ssh-key add"
},
"go": {
- "build": {
- "short": "Build Go binaries"
- },
- "cov": {
- "below_threshold": "FAIL Coverage {{.Actual}}% is below threshold {{.Threshold}}%",
- "error": {
- "below_threshold": "coverage below threshold",
- "no_packages": "no test packages found"
- },
- "flag": {
- "html": "Generate HTML coverage report",
- "open": "Generate and open HTML report in browser",
- "threshold": "Minimum coverage percentage (exit 1 if below)"
- },
- "html_label": "HTML:",
- "long": "Run tests and generate coverage report.\n\nExamples:\n core go cov # Run with coverage summary\n core go cov --html # Generate HTML report\n core go cov --open # Generate and open HTML report\n core go cov --threshold 80 # Fail if coverage < 80%",
- "open_manually": "(open manually)",
- "short": "Run tests with coverage report"
- },
- "fmt": {
- "flag": {
- "check": "Check only, exit 1 if not formatted",
- "fix": "Fix formatting in place"
- },
- "long": "Format Go code using gofmt or goimports.\n\nExamples:\n core go fmt # Check formatting\n core go fmt --fix # Fix formatting\n core go fmt --diff # Show diff",
- "short": "Format Go code"
- },
- "install": {
- "cgo_disabled": "disabled",
- "cgo_label": "CGO:",
- "failed": "FAIL Install failed",
- "flag": {
- "no_cgo": "Disable CGO (CGO_ENABLED=0)"
- },
- "installed_to": "Installed to {{.Path}}",
- "long": "Install Go binary to $GOPATH/bin.\n\nExamples:\n core go install # Install current module\n core go install ./cmd/core # Install specific path\n core go install --no-cgo # Pure Go (no C dependencies)\n core go install -v # Verbose output",
- "short": "Install Go binary",
- "success": "OK"
- },
- "lint": {
- "flag": {
- "fix": "Fix issues automatically"
- },
- "long": "Run golangci-lint on the codebase.\n\nExamples:\n core go lint\n core go lint --fix",
- "short": "Run golangci-lint"
- },
- "long": "Go development tools with enhanced output and environment setup.\n\nCommands:\n test Run tests\n cov Run tests with coverage report\n fmt Format Go code\n lint Run golangci-lint\n install Install Go binary\n mod Module management (tidy, download, verify)\n work Workspace management",
- "mod": {
- "download": {
- "short": "Download modules"
- },
- "graph": {
- "short": "Print dependency graph"
- },
- "long": "Go module management commands.\n\nCommands:\n tidy Add missing and remove unused modules\n download Download modules to local cache\n verify Verify dependencies\n graph Print module dependency graph",
- "short": "Module management",
- "tidy": {
- "short": "Tidy go.mod"
- },
- "verify": {
- "short": "Verify dependencies"
- }
- },
"short": "Go development tools",
- "test": {
- "all_passed": "PASS All tests passed",
- "coverage": "Coverage",
- "flag": {
- "json": "Output JSON results",
- "race": "Enable race detector",
- "run": "Run only tests matching regexp",
- "short": "Run only short tests"
- },
- "long": "Run Go tests with coverage reporting.\n\nSets MACOSX_DEPLOYMENT_TARGET=26.0 to suppress linker warnings.\nFilters noisy output and provides colour-coded coverage.\n\nExamples:\n core go test\n core go test --coverage\n core go test --pkg ./pkg/crypt\n core go test --run TestHash",
- "passed_failed": "{{.Passed}} passed, {{.Failed}} failed",
- "some_failed": "FAIL Some tests failed"
- },
- "work": {
- "added": "Added {{.Module}}",
- "error": {
- "no_modules": "no go.mod files found"
- },
- "init": {
- "short": "Initialize workspace"
- },
- "long": "Go workspace management commands.\n\nCommands:\n sync Sync go.work with modules\n init Initialize go.work\n use Add module to workspace",
- "short": "Workspace management",
- "sync": {
- "short": "Sync workspace"
- },
- "use": {
- "short": "Add module to workspace"
- }
- }
+ "test.short": "Run Go tests",
+ "cov.short": "Run tests with coverage report",
+ "fmt.short": "Format Go code",
+ "lint.short": "Run golangci-lint",
+ "install.short": "Install Go binary",
+ "mod.short": "Module management",
+ "work.short": "Workspace management"
},
"php": {
- "analyse": {
- "flag": {
- "level": "PHPStan analysis level (0-9)",
- "memory": "Memory limit (e.g., 2G)"
- },
- "long": "Run PHPStan or Larastan static analysis.\n\nAuto-detects Larastan if installed, otherwise uses PHPStan.",
- "no_analyser": "no static analyser found (install PHPStan: composer require phpstan/phpstan --dev)",
- "short": "Run PHPStan static analysis"
- },
- "audit": {
- "all_secure": "All dependencies are secure",
- "completed_errors": "audit completed with errors",
- "error": "error",
- "flag": {
- "fix": "Auto-fix vulnerabilities (npm only)"
- },
- "found_vulns": "Found {{.Count}} vulnerabilities across dependencies",
- "long": "Check PHP and JavaScript dependencies for known vulnerabilities.\n\nRuns composer audit and npm audit (if package.json exists).",
- "scanning": "Scanning dependencies for vulnerabilities",
- "secure": "secure",
- "short": "Security audit for dependencies",
- "vulnerabilities": "{{.Count}} vulnerabilities"
- },
- "build": {
- "building_docker": "Building Docker image...",
- "building_linuxkit": "Building LinuxKit image...",
- "docker_run_with": "Run with:",
- "extensions": "Extensions:",
- "flag": {
- "dockerfile": "Path to custom Dockerfile",
- "format": "LinuxKit output format: qcow2 (default), iso, raw, vmdk",
- "name": "Image name (default: project directory name)",
- "no_cache": "Build without cache",
- "output": "Output path for LinuxKit image",
- "platform": "Target platform (e.g., linux/amd64, linux/arm64)",
- "template": "LinuxKit template name (default: server-php)",
- "type": "Build type: docker (default) or linuxkit"
- },
- "format": "Format:",
- "frontend": "Frontend:",
- "laravel": "Laravel:",
- "long": "Build a production-ready container image for the PHP project.\n\nBy default, builds a Docker image using FrankenPHP.\nUse --type linuxkit to build a LinuxKit VM image instead.",
- "octane": "Octane:",
- "php_version": "PHP Version:",
- "platform": "Platform:",
- "short": "Build Docker or LinuxKit image"
- },
- "deploy": {
- "deploying": "Deploying to {{.Environment}}...",
- "flag": {
- "force": "Force deployment even if no changes detected",
- "staging": "Deploy to staging environment",
- "wait": "Wait for deployment to complete"
- },
- "long": "Deploy the PHP application to Coolify.\n\nRequires configuration in .env:\n COOLIFY_URL=https://coolify.example.com\n COOLIFY_TOKEN=your-api-token\n COOLIFY_APP_ID=production-app-id\n COOLIFY_STAGING_APP_ID=staging-app-id (optional)",
- "short": "Deploy to Coolify",
- "triggered": "Deployment triggered. Use 'core php deploy:status' to check progress.",
- "warning_status": "Deployment ended with status: {{.Status}}"
- },
- "deploy_list": {
- "flag": {
- "limit": "Number of deployments to list (default: 10)",
- "staging": "List staging deployments"
- },
- "long": "List recent deployments.",
- "none_found": "No deployments found",
- "recent": "Recent {{.Environment}} deployments:",
- "short": "List recent deployments"
- },
- "deploy_rollback": {
- "flag": {
- "id": "Specific deployment ID to rollback to",
- "staging": "Rollback staging environment",
- "wait": "Wait for rollback to complete"
- },
- "long": "Rollback to a previous deployment.\n\nIf no deployment ID is specified, rolls back to the most recent\nsuccessful deployment.",
- "rolling_back": "Rolling back {{.Environment}}...",
- "short": "Rollback to previous deployment",
- "triggered": "Rollback triggered. Use 'core php deploy:status' to check progress.",
- "warning_status": "Rollback ended with status: {{.Status}}"
- },
- "deploy_status": {
- "flag": {
- "id": "Specific deployment ID",
- "staging": "Check staging environment"
- },
- "long": "Show the status of a deployment.",
- "short": "Show deployment status"
- },
- "dev": {
- "all_stopped": "All services stopped",
- "detected_services": "Detected services:",
- "flag": {
- "domain": "Domain for SSL certificate (default: from APP_URL or localhost)",
- "https": "Enable HTTPS with mkcert",
- "no_horizon": "Skip Laravel Horizon",
- "no_redis": "Skip Redis server",
- "no_reverb": "Skip Laravel Reverb",
- "no_vite": "Skip Vite dev server",
- "port": "FrankenPHP port (default: 8000)"
- },
- "long": "Starts all detected Laravel services.\n\nAuto-detects:\n - Vite (vite.config.js/ts)\n - Horizon (config/horizon.php)\n - Reverb (config/reverb.php)\n - Redis (from .env)",
- "press_ctrl_c": "Press Ctrl+C to stop all services",
- "services_started": "Services started:",
- "short": "Start Laravel development environment",
- "shutting_down": "Shutting down...",
- "starting": "Starting {{.AppName}} development environment",
- "stop_error": "Error stopping services: {{.Error}}"
- },
- "error": {
- "analysis_issues": "analysis found issues",
- "audit_failed": "audit failed",
- "critical_high_issues": "critical or high severity issues found",
- "deploy_failed": "deployment failed",
- "fmt_failed": "formatting failed",
- "fmt_issues": "formatting issues found",
- "infection_failed": "mutation testing failed",
- "infection_not_installed": "infection not installed",
- "mkcert_not_installed": "mkcert not installed",
- "not_laravel": "not a Laravel project (missing artisan or laravel/framework)",
- "not_laravel_short": "not a Laravel project",
- "not_php": "not a PHP project (missing composer.json)",
- "psalm_issues": "psalm found issues",
- "psalm_not_installed": "psalm not installed",
- "rector_failed": "rector failed",
- "rector_not_installed": "rector not installed",
- "rollback_failed": "rollback failed",
- "security_failed": "security check failed",
- "update_packages": "composer update failed",
- "vulns_found": "vulnerabilities found"
- },
- "fmt": {
- "flag": {
- "fix": "Auto-fix formatting issues"
- },
- "formatting": "Formatting code with {{.Formatter}}",
- "long": "Format PHP code using Laravel Pint.",
- "no_formatter": "no formatter found (install Laravel Pint: composer require laravel/pint --dev)",
- "no_issues": "No formatting issues found",
- "short": "Format PHP code with Laravel Pint"
- },
- "infection": {
- "complete": "Mutation testing complete",
- "flag": {
- "filter": "Filter files by pattern",
- "min_covered_msi": "Minimum covered mutation score (0-100, default: 70)",
- "min_msi": "Minimum mutation score indicator (0-100, default: 50)",
- "only_covered": "Only mutate covered code",
- "threads": "Number of parallel threads (default: 4)"
- },
- "install": "composer require --dev infection/infection",
- "long": "Run Infection mutation testing to measure test suite quality.\n\nMutation testing modifies your code and checks if tests catch\nthe changes. High mutation score = high quality tests.\n\nWarning: This can be slow on large codebases.",
- "not_found": "Infection not found",
- "note": "This may take a while...",
- "short": "Mutation testing for test quality"
- },
- "label": {
- "app_url": "App URL:",
- "audit": "Audit:",
- "branch": "Branch:",
- "commit": "Commit:",
- "completed": "Completed:",
- "deploy": "Deploy:",
- "duration": "Duration:",
- "id": "ID:",
- "infection": "Infection:",
- "info": "Info:",
- "message": "Message:",
- "php": "PHP:",
- "psalm": "Psalm:",
- "qa": "QA:",
- "rector": "Rector:",
- "running": "Running:",
- "security": "Security:",
- "services": "Services:",
- "setup": "Setup:",
- "vite": "Vite:"
- },
- "logs": {
- "flag": {
- "service": "Specific service (default: all)"
- },
- "long": "Stream logs from Laravel services.\n\nServices: frankenphp, vite, horizon, reverb, redis",
- "short": "View service logs"
- },
- "long": "Manage Laravel development environment with FrankenPHP.\n\nServices orchestrated:\n - FrankenPHP/Octane (port 8000, HTTPS on 443)\n - Vite dev server (port 5173)\n - Laravel Horizon (queue workers)\n - Laravel Reverb (WebSocket, port 8080)\n - Redis (port 6379)",
- "packages": {
- "link": {
- "done": "Packages linked. Run 'composer update' to install.",
- "linking": "Linking packages...",
- "long": "Link local PHP packages for development.\n\nAdds path repositories to composer.json with symlink enabled.\nThe package name is auto-detected from each path's composer.json.",
- "short": "Link local packages"
- },
- "list": {
- "linked": "Linked packages:",
- "long": "List all locally linked packages.\n\nShows package name, path, and version for each linked package.",
- "none_found": "No linked packages found",
- "short": "List linked packages",
- "unknown": "(unknown)"
- },
- "long": "Link and manage local PHP packages for development.\n\nSimilar to npm link, this adds path repositories to composer.json\nfor developing packages alongside your project.",
- "short": "Manage local PHP packages",
- "unlink": {
- "done": "Packages unlinked. Run 'composer update' to remove.",
- "long": "Remove linked packages from composer.json.\n\nRemoves path repositories by package name.",
- "short": "Unlink packages",
- "unlinking": "Unlinking packages..."
- },
- "update": {
- "done": "Packages updated",
- "long": "Run composer update for linked packages.\n\nIf no packages specified, updates all packages.",
- "short": "Update linked packages",
- "updating": "Updating packages..."
- }
- },
- "psalm": {
- "analysing": "Analysing code with Psalm",
- "analysing_fixing": "Analysing and fixing code with Psalm",
- "flag": {
- "baseline": "Generate/update baseline file",
- "level": "Error level (1=strictest, 8=most lenient)",
- "show_info": "Show info-level issues"
- },
- "install": "composer require --dev vimeo/psalm",
- "long": "Run Psalm deep static analysis with Laravel plugin support.\n\nPsalm provides deeper type inference than PHPStan and catches\ndifferent classes of bugs. Both should be run for best coverage.",
- "not_found": "Psalm not found",
- "setup": "./vendor/bin/psalm --init",
- "short": "Run Psalm static analysis"
- },
- "qa": {
- "all_passed": "All checks passed ({{.Passed}}/{{.Total}})",
- "failed": "failed",
- "fix_infection": "Improve test coverage for mutated code",
- "fix_phpstan": "Fix PHPStan errors shown above",
- "fix_psalm": "Fix Psalm errors shown above",
- "fix_tests": "Fix failing tests shown above",
- "flag": {
- "full": "Run all stages including slow checks",
- "quick": "Only run quick checks"
- },
- "issue_analysis": "Static analysis errors",
- "issue_mutation": "Mutation score below threshold",
- "issue_rector": "Code improvements available",
- "issue_style": "Code style issues found",
- "issue_tests": "Test failures",
- "issue_types": "Type errors found",
- "issue_vulns": "vulnerabilities",
- "long": "Run the complete quality assurance pipeline.\n\nStages:\n quick: Security audit, code style, PHPStan\n standard: Psalm, tests\n full: Rector dry-run, mutation testing (slow)",
- "no_checks": "No checks available",
- "passed": "passed",
- "pipeline_failed": "QA pipeline failed",
- "short": "Run full QA pipeline",
- "some_failed": "Some checks failed ({{.Passed}}/{{.Total}} passed)",
- "stage_prefix": "═══ ",
- "stage_suffix": " STAGE ═══",
- "to_fix": "To fix:"
- },
- "rector": {
- "analysing": "Analysing code with Rector",
- "changes_suggested": "Changes suggested (use --fix to apply)",
- "flag": {
- "clear_cache": "Clear Rector cache before running",
- "diff": "Show detailed diff of changes",
- "fix": "Apply changes (default is dry-run)"
- },
- "install": "composer require --dev rector/rector",
- "long": "Run Rector for automated code improvements and PHP upgrades.\n\nRector can automatically upgrade PHP syntax, improve code quality,\nand apply framework-specific refactorings.",
- "no_changes": "No changes needed",
- "not_found": "Rector not found",
- "refactoring": "Refactoring code with Rector",
- "setup": "./vendor/bin/rector init",
- "short": "Automated code refactoring"
- },
- "security": {
- "checks_suffix": " CHECKS:",
- "critical": "Critical:",
- "flag": {
- "sarif": "Output in SARIF format (for GitHub Security)",
- "severity": "Minimum severity (critical, high, medium, low)",
- "url": "URL to check HTTP headers (optional)"
- },
- "high": "High:",
- "long": "Scan for security vulnerabilities in configuration and code.\n\nChecks environment config, file permissions, code patterns,\nand runs security-focused static analysis.",
- "low": "Low:",
- "medium": "Medium:",
- "passed": "Passed:",
- "short": "Security vulnerability scanning",
- "summary": "Security scan complete"
- },
- "serve": {
- "flag": {
- "container": "Container name",
- "detach": "Run in detached mode",
- "env_file": "Path to environment file",
- "https_port": "HTTPS port (default: 443)",
- "name": "Docker image name (required)",
- "port": "HTTP port (default: 80)"
- },
- "long": "Run a production PHP container.\n\nThis starts the built Docker image in production mode.",
- "name_required": "--name is required: specify the Docker image name",
- "ports": "Ports:",
- "short": "Run production container",
- "stopped": "Container stopped"
- },
- "shell": {
- "long": "Open an interactive shell in a running PHP container.",
- "opening": "Opening shell in container {{.Container}}...",
- "short": "Open shell in running container"
- },
"short": "Laravel/PHP development tools",
- "ssl": {
- "cert_label": "Cert:",
- "certs_created": "SSL certificates created",
- "certs_exist": "Certificates already exist",
- "flag": {
- "domain": "Domain for certificate (default: from APP_URL)"
- },
- "install_linux": "Linux: see https://github.com/FiloSottile/mkcert",
- "install_macos": "macOS: brew install mkcert",
- "key_label": "Key:",
- "mkcert_not_installed": "mkcert is not installed",
- "setting_up": "Setting up SSL for {{.Domain}}",
- "short": "Setup SSL certificates with mkcert"
- },
- "status": {
- "detected_services": "Detected services:",
- "error": "error: {{.Error}}",
- "octane_server": "Octane server:",
- "package_manager": "Package manager:",
- "pid": "pid {{.PID}}",
- "port": "port {{.Port}}",
- "running": "running",
- "short": "Show service status",
- "ssl_certs": "SSL certificates:",
- "ssl_installed": "installed",
- "ssl_not_setup": "not setup",
- "stopped": "stopped"
- },
- "stop": {
- "short": "Stop all Laravel services",
- "stopping": "Stopping services..."
- },
- "test": {
- "failed": "Some tests failed",
- "flag": {
- "coverage": "Generate code coverage",
- "filter": "Filter tests by name pattern",
- "group": "Run only tests in specified group",
- "parallel": "Run tests in parallel"
- },
- "long": "Run PHP tests using PHPUnit or Pest.\n\nAuto-detects Pest if tests/Pest.php exists, otherwise uses PHPUnit.",
- "short": "Run PHP tests (PHPUnit/Pest)"
- }
+ "dev.short": "Start Laravel development environment",
+ "dev.press_ctrl_c": "Press Ctrl+C to stop all services",
+ "test.short": "Run PHP tests (PHPUnit/Pest)",
+ "fmt.short": "Format PHP code with Laravel Pint",
+ "analyse.short": "Run PHPStan static analysis",
+ "audit.short": "Security audit for dependencies",
+ "psalm.short": "Run Psalm static analysis",
+ "rector.short": "Automated code refactoring",
+ "infection.short": "Mutation testing for test quality",
+ "security.short": "Security vulnerability scanning",
+ "qa.short": "Run full QA pipeline",
+ "build.short": "Build Docker or LinuxKit image",
+ "deploy.short": "Deploy to Coolify",
+ "serve.short": "Run production container",
+ "ssl.short": "Setup SSL certificates with mkcert",
+ "packages.short": "Manage local PHP packages"
},
"pkg": {
- "error": {
- "auth_failed": "authentication failed - try: unset GH_TOKEN && gh auth login",
- "gh_not_authenticated": "gh CLI not authenticated. Run: gh auth login",
- "invalid_repo_format": "invalid repo format: use org/repo (e.g., host-uk/core-php)",
- "no_repos_yaml": "no repos.yaml found",
- "no_repos_yaml_workspace": "no repos.yaml found - run from workspace directory",
- "repo_required": "repository is required (e.g., core pkg install host-uk/core-php)",
- "search_failed": "search failed: %s",
- "specify_package": "specify package name or use --all"
- },
- "install": {
- "add_to_registry": "add to registry",
- "added_to_registry": "added to repos.yaml",
- "already_exists": "{{.Name}} already exists at {{.Path}}",
- "flag": {
- "add": "Add to repos.yaml registry",
- "dir": "Target directory (default: ./packages or current dir)"
- },
- "installed": "Installed {{.Name}}",
- "installing_label": "Installing:",
- "long": "Clones a repository from GitHub.\n\nExamples:\n core pkg install host-uk/core-php\n core pkg install host-uk/core-tenant --dir ./packages\n core pkg install host-uk/core-admin --add",
- "short": "Clone a package from GitHub"
- },
- "list": {
- "install_missing": "Install missing:",
- "long": "Lists all packages in the current workspace.\n\nReads from repos.yaml or scans for git repositories.\n\nExamples:\n core pkg list",
- "no_packages": "No packages in registry.",
- "short": "List installed packages",
- "summary": "{{.Installed}} installed, {{.Missing}} missing",
- "title": "Installed Packages"
- },
- "long": "Manage host-uk/core-* packages and repositories.\n\nCommands:\n search Search GitHub for packages\n install Clone a package from GitHub\n list List installed packages\n update Update installed packages\n outdated Check for outdated packages",
- "no_description": "(no description)",
- "outdated": {
- "all_up_to_date": "All packages up to date",
- "commits_behind": "{{.Count}} commits behind",
- "long": "Checks which packages have unpulled commits.\n\nExamples:\n core pkg outdated",
- "outdated_label": "Outdated:",
- "short": "Check for outdated packages",
- "summary": "{{.Outdated}} outdated, {{.UpToDate}} up to date",
- "update_with": "Update with:"
- },
- "search": {
- "cache_label": "Cache:",
- "fetching_label": "Fetching:",
- "flag": {
- "limit": "Max results (default 50)",
- "org": "GitHub organization (default: host-uk)",
- "pattern": "Repo name pattern (* for wildcard)",
- "refresh": "Bypass cache and fetch fresh data",
- "type": "Filter by type in name (mod, services, plug, website)"
- },
- "found_repos": "Found {{.Count}} repositories:",
- "gh_token_unset": "Unset it with: unset GH_TOKEN",
- "gh_token_warning": "GH_TOKEN env var is set - this may cause auth issues",
- "long": "Searches GitHub for repositories matching a pattern.\nUses gh CLI for authenticated search. Results are cached for 1 hour.\n\nExamples:\n core pkg search # List all host-uk repos\n core pkg search --pattern 'core-*' # Search for core-* repos\n core pkg search --org mycompany # Search different org\n core pkg search --refresh # Bypass cache",
- "no_repos_found": "No repositories found matching pattern.",
- "private_label": "[private]",
- "short": "Search GitHub for packages"
- },
"short": "Package management for core-* repos",
- "update": {
- "flag": {
- "all": "Update all packages"
- },
- "long": "Pulls latest changes for installed packages.\n\nExamples:\n core pkg update core-php # Update specific package\n core pkg update --all # Update all packages",
- "not_installed": "not installed",
- "short": "Update installed packages",
- "summary": "{{.Updated}} updated, {{.Skipped}} skipped, {{.Failed}} failed",
- "update_label": "Update:",
- "updating": "Updating {{.Count}} package(s)"
- }
+ "install.short": "Clone a package from GitHub",
+ "list.short": "List installed packages",
+ "update.short": "Update installed packages",
+ "outdated.short": "Check for outdated packages",
+ "search.short": "Search GitHub for packages",
+ "error.invalid_repo_format": "invalid repo format: use org/repo (e.g., host-uk/core-php)"
},
"sdk": {
- "diff": {
- "base_label": "Base:",
- "breaking": "Breaking:",
- "error": {
- "base_required": "--base is required (version tag or file path)"
- },
- "flag": {
- "base": "Base spec (version tag or file)",
- "spec": "Current spec file"
- },
- "label": "SDK Diff:",
- "long": "Check for breaking API changes between spec versions.\n\nCompares a base spec (version tag or file) against the current spec\nand reports any breaking changes that would affect API consumers.",
- "short": "Check for breaking API changes"
- },
- "label": {
- "ok": "OK:",
- "sdk": "SDK:"
- },
- "long": "Tools for validating OpenAPI specs and checking API compatibility.\nTo generate SDKs, use: core build sdk\n\nCommands:\n diff Check for breaking API changes\n validate Validate OpenAPI spec syntax",
"short": "SDK validation and API compatibility tools",
- "validate": {
- "long": "Validate OpenAPI spec syntax.\n\nChecks that the OpenAPI specification file is valid and well-formed.",
- "short": "Validate OpenAPI spec",
- "valid": "Spec is valid",
- "validating": "Validating OpenAPI spec"
- }
+ "diff.short": "Check for breaking API changes",
+ "validate.short": "Validate OpenAPI spec"
},
"setup": {
- "already_exist_count": "{{.Count}} already exist",
- "already_exists": "already exists",
- "bootstrap_mode": "Bootstrap mode (no repos.yaml found)",
- "cancelled": "Cancelled.",
- "cloned": "cloned",
- "cloned_count": "{{.Count}} cloned",
- "cloning_current_dir": "Cloning into current directory",
- "complete": "Setup complete",
- "creating_project_dir": "Creating project directory",
- "done": "done",
- "exist": "{{.Count}} exist",
- "flag": {
- "all": "Skip wizard, clone all packages (non-interactive)",
- "build": "Run build after cloning",
- "dry_run": "Show what would be cloned without cloning",
- "name": "Project directory name for bootstrap mode",
- "only": "Only clone repos of these types (comma-separated: foundation,module,product)",
- "registry": "Path to repos.yaml (auto-detected if not specified)"
- },
- "long": "Sets up a development workspace.\n\nREGISTRY MODE (repos.yaml exists):\n Clones all repositories defined in repos.yaml into packages/.\n Skips repos that already exist. Use --only to filter by type.\n\nBOOTSTRAP MODE (no repos.yaml):\n 1. Clones core-devops to set up the workspace\n 2. Presents an interactive wizard to select packages\n 3. Clones selected packages\n\nUse --all to skip the wizard and clone everything.",
- "nothing_to_clone": "Nothing to clone.",
- "org_label": "Org:",
- "repo": {
- "created": "Created",
- "detected_type": "Detected project type",
- "setting_up": "Setting up repository",
- "would_create": "Would create"
- },
"short": "Bootstrap workspace or clone packages from registry",
- "to_clone": "{{.Count}} to clone",
- "wizard": {
- "confirm_cancel": "Cancel",
- "confirm_clone": "Clone {{.Count}} packages to {{.Target}}?",
- "confirm_yes": "Yes, clone",
- "git_repo_title": "This directory is a git repository",
- "option_package": "Create Package (clone repos into subdirectory)",
- "option_setup": "Setup Working Directory",
- "package_selection": "Package Selection",
- "project_name_desc": "Enter the name for your new workspace directory",
- "project_name_title": "Project directory name",
- "select_packages": "Select packages to clone",
- "selection_hint": "Use space to select/deselect, enter to confirm",
- "what_to_do": "What would you like to do?"
- },
- "would_clone": "Would clone",
- "would_clone_list": "Would clone:",
- "would_load_registry": "Would load registry from"
+ "complete": "Setup complete",
+ "bootstrap_mode": "Bootstrap mode (no repos.yaml found)",
+ "nothing_to_clone": "Nothing to clone.",
+ "wizard.select_packages": "Select packages to clone",
+ "wizard.what_to_do": "What would you like to do?"
},
"test": {
- "coverage_by_package": "Coverage by package:",
- "error": {
- "no_go_mod": "no go.mod found - run from a Go project directory"
- },
- "failed_packages": "Failed packages:",
- "flag": {
- "json": "Output JSON for CI/agents",
- "pkg": "Package pattern to test (default: ./...)",
- "race": "Enable race detector (-race)",
- "run": "Run only tests matching this regex (-run)",
- "short": "Skip long-running tests (-short)",
- "verbose": "Show test output as it runs (-v)"
- },
- "label": {
- "average": "Average"
- },
- "long": "Runs Go tests with coverage reporting.\n\nSets MACOSX_DEPLOYMENT_TARGET=26.0 to suppress linker warnings on macOS.\n\nExamples:\n core test # Run all tests with coverage summary\n core test --verbose # Show test output as it runs\n core test --coverage # Show detailed per-package coverage\n core test --pkg ./pkg/... # Test specific packages\n core test --run TestName # Run specific test by name\n core test --short # Skip long-running tests\n core test --race # Enable race detector\n core test --json # Output JSON for CI/agents",
- "tests_failed": "Tests failed"
+ "short": "Run Go tests with coverage"
},
"vm": {
- "error": {
- "id_and_cmd_required": "container ID and command are required",
- "id_required": "container ID is required",
- "linuxkit_not_found": "linuxkit not found. Install with: brew install linuxkit (macOS) or see https://github.com/linuxkit/linuxkit",
- "multiple_match": "multiple containers match '{{.ID}}', be more specific",
- "no_image_found": "no image found after build",
- "no_match": "no container found matching: {{.ID}}",
- "template_required": "template name is required"
- },
- "exec": {
- "long": "Execute a command inside a running VM via SSH.\n\nExamples:\n core vm exec abc12345 ls -la\n core vm exec abc1 /bin/sh",
- "short": "Execute a command in a VM"
- },
- "hint": {
- "stop": "Use 'core vm stop {{.ID}}' to stop",
- "view_logs": "Use 'core vm logs {{.ID}}' to view output"
- },
- "label": {
- "building": "Building:",
- "container_stopped": "Container stopped:",
- "hypervisor": "Hypervisor:",
- "name": "Name:",
- "pid": "PID:"
- },
- "logs": {
- "long": "View logs from a VM.\n\nExamples:\n core vm logs abc12345\n core vm logs -f abc1",
- "short": "View VM logs"
- },
- "long": "Manage LinuxKit virtual machines.\n\nLinuxKit VMs are lightweight, immutable VMs built from YAML templates.\nThey run using qemu or hyperkit depending on your system.\n\nCommands:\n run Run a VM from image or template\n ps List running VMs\n stop Stop a running VM\n logs View VM logs\n exec Execute command in VM\n templates Manage LinuxKit templates",
- "ps": {
- "flag": {
- "all": "Show all containers (including stopped)"
- },
- "header": "ID\tNAME\tIMAGE\tSTATUS\tSTARTED\tPID",
- "long": "Lists all VMs. By default, only shows running VMs.\n\nExamples:\n core vm ps\n core vm ps -a",
- "no_containers": "No containers",
- "no_running": "No running containers",
- "short": "List running VMs"
- },
- "run": {
- "error": {
- "image_required": "image path is required (or use --template)"
- },
- "flag": {
- "cpus": "Number of CPUs (default: 1)",
- "detach": "Run in detached mode (background)",
- "memory": "Memory in MB (default: 1024)",
- "name": "Name for the container",
- "ssh_port": "SSH port for exec commands (default: 2222)",
- "template": "Run from a LinuxKit template (build + run)",
- "var": "Template variable in KEY=VALUE format (can be repeated)"
- },
- "long": "Runs a LinuxKit image as a VM using the available hypervisor.\n\nSupported image formats: .iso, .qcow2, .vmdk, .raw\n\nYou can also run from a template using --template, which will build and run\nthe image automatically. Use --var to set template variables.\n\nExamples:\n core vm run image.iso\n core vm run -d image.qcow2\n core vm run --name myvm --memory 2048 --cpus 4 image.iso\n core vm run --template core-dev --var SSH_KEY=\"ssh-rsa AAAA...\"\n core vm run --template server-php --var SSH_KEY=\"...\" --var DOMAIN=example.com",
- "short": "Run a LinuxKit image or template"
- },
"short": "LinuxKit VM management",
- "stop": {
- "long": "Stops a running VM by ID.\n\nExamples:\n core vm stop abc12345\n core vm stop abc1",
- "short": "Stop a running VM",
- "stopping": "Stopping:"
- },
- "templates": {
- "header": "NAME\tDESCRIPTION",
- "hint": {
- "run": "Run from template:",
- "show": "Show template:",
- "vars": "Show variables:"
- },
- "long": "Manage LinuxKit YAML templates for building VMs.\n\nTemplates provide pre-configured LinuxKit configurations for common use cases.\nThey support variable substitution with ${VAR} and ${VAR:-default} syntax.\n\nExamples:\n core vm templates # List available templates\n core vm templates show core-dev # Show template content\n core vm templates vars server-php # Show template variables",
- "no_templates": "No templates available.",
- "short": "Manage LinuxKit templates",
- "show": {
- "long": "Display the content of a LinuxKit template.\n\nExamples:\n core templates show core-dev\n core templates show server-php",
- "short": "Display template content"
- },
- "title": "Available LinuxKit Templates",
- "vars": {
- "long": "Display all variables used in a template.\n\nShows required variables (no default) and optional variables (with defaults).\n\nExamples:\n core templates vars core-dev\n core templates vars server-php",
- "none": "No variables in this template.",
- "optional": "Optional Variables (with defaults):",
- "required": "Required Variables (no default):",
- "short": "Show template variables"
- }
- }
+ "run.short": "Run a LinuxKit image or template",
+ "ps.short": "List running VMs",
+ "stop.short": "Stop a running VM",
+ "logs.short": "View VM logs",
+ "exec.short": "Execute a command in a VM",
+ "templates.short": "Manage LinuxKit templates"
}
},
"error": {
"gh_not_found": "'gh' CLI not found. Install from https://cli.github.com/",
- "invalid": "Invalid: {{.Item}}",
- "network": "Network error: {{.Message}}",
- "not_found": "Not found: {{.Item}}",
- "permission": "Permission denied: {{.Item}}",
"registry_not_found": "No repos.yaml found",
- "repo_not_found": "Repository '{{.Name}}' not found",
- "timeout": "Operation timed out"
- },
- "label": {
- "author": "Author",
- "branch": "Branch",
- "commit": "Commit",
- "date": "Date",
- "duration": "Duration",
- "message": "Message",
- "package": "Package",
- "registry": "Registry",
- "scanning": "Scanning",
- "status": "Status",
- "total": "Total"
+ "repo_not_found": "Repository '{{.Name}}' not found"
},
"lang": {
"de": "German",
diff --git a/pkg/i18n/locales/en_US.json b/pkg/i18n/locales/en_US.json
index 1e81cae..04e4683 100644
--- a/pkg/i18n/locales/en_US.json
+++ b/pkg/i18n/locales/en_US.json
@@ -1,1205 +1,10 @@
{
- "cli.success": "Success",
- "cli.error": "Error",
- "cli.warning": "Warning",
- "cli.info": "Info",
- "cli.done": "Done",
- "cli.failed": "Failed",
- "cli.pass": "PASS",
- "cli.fail": "FAIL",
- "cli.ok": "OK",
- "cli.skip": "Skipped",
- "cli.pending": "Pending",
- "cli.running": "Running",
- "cli.completed": "Completed",
- "cli.cancelled": "Cancelled",
- "cli.aborted": "Aborted",
- "cli.confirm.yes": "Yes",
- "cli.confirm.no": "No",
- "cli.confirm.proceed": "Proceed?",
- "cli.confirm.continue": "Continue?",
- "cli.confirm.abort": "Operation aborted",
- "cli.progress.checking": "Checking",
- "cli.progress.fetching": "Fetching",
- "cli.progress.loading": "Loading",
- "cli.progress.processing": "Processing",
- "cli.progress.installing": "Installing",
- "cli.progress.building": "Building",
- "cli.progress.deploying": "Deploying",
- "cli.progress.testing": "Testing",
- "cli.time.just_now": "just now",
- "cli.time.seconds_ago": "{{.Count}} seconds ago",
- "cli.time.minute_ago": "1 minute ago",
- "cli.time.minutes_ago": "{{.Count}} minutes ago",
- "cli.time.hour_ago": "1 hour ago",
- "cli.time.hours_ago": "{{.Count}} hours ago",
- "cli.time.day_ago": "1 day ago",
- "cli.time.days_ago": "{{.Count}} days ago",
- "cli.time.week_ago": "1 week ago",
- "cli.time.weeks_ago": "{{.Count}} weeks ago",
- "cli.count.items": {
- "one": "{{.Count}} item",
- "other": "{{.Count}} items"
- },
- "cli.count.files": {
- "one": "{{.Count}} file",
- "other": "{{.Count}} files"
- },
- "cli.count.repos": {
- "one": "{{.Count}} repo",
- "other": "{{.Count}} repos"
- },
- "cli.count.commits": {
- "one": "{{.Count}} commit",
- "other": "{{.Count}} commits"
- },
- "cmd.dev.short": "Multi-repo development workflow",
- "cmd.dev.long": "Manage multiple git repositories and GitHub integration.\n\nUses repos.yaml to discover repositories. Falls back to scanning\nthe current directory if no registry is found.\n\nGit Operations:\n work Combined status -> commit -> push workflow\n health Quick repo health summary\n commit Claude-assisted commit messages\n push Push repos with unpushed commits\n pull Pull repos behind remote\n\nGitHub Integration (requires gh CLI):\n issues List open issues across repos\n reviews List PRs awaiting review\n ci Check GitHub Actions status\n impact Analyze dependency impact\n\nDev Environment:\n install Download dev environment image\n boot Start dev environment VM\n stop Stop dev environment VM\n shell Open shell in dev VM\n status Check dev VM status",
- "cmd.dev.work.short": "Multi-repo git operations",
- "cmd.dev.work.long": "Manage git status, commits, and pushes across multiple repositories.\n\nReads repos.yaml to discover repositories and their relationships.\nShows status, optionally commits with Claude, and pushes changes.",
- "cmd.dev.work.flag.status": "Show status only, don't push",
- "cmd.dev.work.flag.commit": "Use Claude to commit dirty repos before pushing",
- "cmd.dev.work.flag.registry": "Path to repos.yaml (auto-detected if not specified)",
- "cmd.dev.health.short": "Quick health check across all repos",
- "cmd.dev.health.long": "Shows a summary of repository health:\ntotal repos, dirty repos, unpushed commits, etc.",
- "cmd.dev.health.flag.registry": "Path to repos.yaml (auto-detected if not specified)",
- "cmd.dev.health.flag.verbose": "Show detailed breakdown",
- "cmd.dev.commit.short": "Claude-assisted commits across repos",
- "cmd.dev.commit.long": "Uses Claude to create commits for dirty repos.\nShows uncommitted changes and invokes Claude to generate commit messages.",
- "cmd.dev.commit.flag.registry": "Path to repos.yaml (auto-detected if not specified)",
- "cmd.dev.commit.flag.all": "Commit all dirty repos without prompting",
- "cmd.dev.push.short": "Push commits across all repos",
- "cmd.dev.push.long": "Pushes unpushed commits for all repos.\nShows repos with commits to push and confirms before pushing.",
- "cmd.dev.push.flag.registry": "Path to repos.yaml (auto-detected if not specified)",
- "cmd.dev.push.flag.force": "Skip confirmation prompt",
- "cmd.dev.pull.short": "Pull updates across all repos",
- "cmd.dev.pull.long": "Pulls updates for all repos.\nBy default only pulls repos that are behind. Use --all to pull all repos.",
- "cmd.dev.pull.flag.registry": "Path to repos.yaml (auto-detected if not specified)",
- "cmd.dev.pull.flag.all": "Pull all repos, not just those behind",
- "cmd.dev.issues.short": "List open issues across all repos",
- "cmd.dev.issues.long": "Fetches open issues from GitHub for all repos in the registry.\nRequires the 'gh' CLI to be installed and authenticated.",
- "cmd.dev.issues.flag.registry": "Path to repos.yaml (auto-detected if not specified)",
- "cmd.dev.issues.flag.limit": "Max issues per repo",
- "cmd.dev.issues.flag.assignee": "Filter by assignee (use @me for yourself)",
- "cmd.dev.reviews.short": "List PRs needing review across all repos",
- "cmd.dev.reviews.long": "Fetches open PRs from GitHub for all repos in the registry.\nShows review status (approved, changes requested, pending).\nRequires the 'gh' CLI to be installed and authenticated.",
- "cmd.dev.reviews.flag.registry": "Path to repos.yaml (auto-detected if not specified)",
- "cmd.dev.reviews.flag.author": "Filter by PR author",
- "cmd.dev.reviews.flag.all": "Show all PRs including drafts",
- "cmd.dev.ci.short": "Check CI status across all repos",
- "cmd.dev.ci.long": "Fetches GitHub Actions workflow status for all repos.\nShows latest run status for each repo.\nRequires the 'gh' CLI to be installed and authenticated.",
- "cmd.dev.ci.flag.registry": "Path to repos.yaml (auto-detected if not specified)",
- "cmd.dev.ci.flag.branch": "Filter by branch",
- "cmd.dev.ci.flag.failed": "Show only failed runs",
- "cmd.dev.impact.short": "Show impact of changing a repo",
- "cmd.dev.impact.long": "Analyzes the dependency graph to show which repos\nwould be affected by changes to the specified repo.",
- "cmd.dev.impact.flag.registry": "Path to repos.yaml (auto-detected if not specified)",
- "cmd.dev.api.short": "Tools for managing service APIs",
- "cmd.dev.sync.short": "Synchronizes public service APIs with internal implementations",
- "cmd.dev.sync.long": "This command scans the 'pkg' directory for services and ensures that the\ntop-level public API for each service is in sync with its internal implementation.\nIt automatically generates the necessary Go files with type aliases.",
- "cmd.dev.vm.install.short": "Download and install the dev environment image",
- "cmd.dev.vm.install.long": "Downloads the platform-specific dev environment image.\n\nThe image includes Go, PHP, Node.js, Python, Docker, and Claude CLI.\nDownloads are cached at ~/.core/images/\n\nExamples:\n core dev install",
- "cmd.dev.vm.boot.short": "Start the dev environment",
- "cmd.dev.vm.boot.long": "Boots the dev environment VM.\n\nExamples:\n core dev boot\n core dev boot --memory 8192 --cpus 4\n core dev boot --fresh",
- "cmd.dev.vm.boot.flag.memory": "Memory in MB (default: 4096)",
- "cmd.dev.vm.boot.flag.cpus": "Number of CPUs (default: 2)",
- "cmd.dev.vm.boot.flag.fresh": "Stop existing and start fresh",
- "cmd.dev.vm.stop.short": "Stop the dev environment",
- "cmd.dev.vm.stop.long": "Stops the running dev environment VM.\n\nExamples:\n core dev stop",
- "cmd.dev.vm.status.short": "Show dev environment status",
- "cmd.dev.vm.status.long": "Shows the current status of the dev environment.\n\nExamples:\n core dev vm-status",
- "cmd.dev.vm.shell.short": "Connect to the dev environment",
- "cmd.dev.vm.shell.long": "Opens an interactive shell in the dev environment.\n\nUses SSH by default, or serial console with --console.\n\nExamples:\n core dev shell\n core dev shell --console\n core dev shell -- ls -la",
- "cmd.dev.vm.shell.flag.console": "Use serial console instead of SSH",
- "cmd.dev.vm.serve.short": "Mount project and start dev server",
- "cmd.dev.vm.serve.long": "Mounts the current project into the dev environment and starts a dev server.\n\nAuto-detects the appropriate serve command based on project files.\n\nExamples:\n core dev serve\n core dev serve --port 3000\n core dev serve --path public",
- "cmd.dev.vm.serve.flag.port": "Port to serve on (default: 8000)",
- "cmd.dev.vm.serve.flag.path": "Subdirectory to serve",
- "cmd.dev.vm.test.short": "Run tests in the dev environment",
- "cmd.dev.vm.test.long": "Runs tests in the dev environment.\n\nAuto-detects the test command based on project files, or uses .core/test.yaml.\n\nExamples:\n core dev test\n core dev test --name integration\n core dev test -- go test -v ./...",
- "cmd.dev.vm.test.flag.name": "Run named test command from .core/test.yaml",
- "cmd.dev.vm.claude.short": "Start sandboxed Claude session",
- "cmd.dev.vm.claude.long": "Starts a Claude Code session inside the dev environment sandbox.\n\nProvides isolation while forwarding selected credentials.\nAuto-boots the dev environment if not running.\n\nAuth options (default: all):\n gh - GitHub CLI auth\n anthropic - Anthropic API key\n ssh - SSH agent forwarding\n git - Git config (name, email)\n\nExamples:\n core dev claude\n core dev claude --model opus\n core dev claude --auth gh,anthropic\n core dev claude --no-auth",
- "cmd.dev.vm.claude.flag.no_auth": "Don't forward any auth credentials",
- "cmd.dev.vm.claude.flag.model": "Model to use (opus, sonnet)",
- "cmd.dev.vm.claude.flag.auth": "Selective auth forwarding (gh,anthropic,ssh,git)",
- "cmd.dev.vm.update.short": "Check for and apply updates",
- "cmd.dev.vm.update.long": "Checks for dev environment updates and optionally applies them.\n\nExamples:\n core dev update\n core dev update --apply",
- "cmd.dev.vm.update.flag.apply": "Download and apply the update",
- "cmd.dev.status.dirty": "dirty",
- "cmd.dev.status.clean": "clean",
- "cmd.dev.status.ahead": "ahead",
- "cmd.dev.status.behind": "behind",
- "cmd.dev.status.synced": "synced",
- "cmd.dev.status.diverged": "diverged",
- "cmd.dev.status.conflict": "conflict",
- "cmd.dev.push.confirm": "Push all?",
- "cmd.dev.push.success": "Pushed successfully",
- "cmd.dev.push.failed": "Push failed",
- "cmd.dev.push.nothing": "Nothing to push",
- "cmd.dev.commit.committing": "Committing dirty repos with Claude...",
- "cmd.dev.commit.success": "Committed successfully",
- "cmd.dev.commit.failed": "Commit failed",
- "cmd.dev.registry_label": "Registry:",
- "cmd.dev.scanning_label": "Scanning:",
- "cmd.dev.no_git_repos": "No git repositories found.",
- "cmd.dev.no_changes": "No uncommitted changes found.",
- "cmd.dev.repos_with_changes": "{{.Count}} repo(s) with uncommitted changes:",
- "cmd.dev.modified": "{{.Count}} modified",
- "cmd.dev.untracked": "{{.Count}} untracked",
- "cmd.dev.staged": "{{.Count}} staged",
- "cmd.dev.confirm_claude_commit": "Have Claude commit these repos?",
- "cmd.dev.committing": "Committing",
- "cmd.dev.committed": "committed",
- "cmd.dev.done_succeeded": "Done: {{.Count}} succeeded",
- "cmd.dev.count_failed": "{{.Count}} failed",
- "cmd.dev.push.all_up_to_date": "All repos up to date. Nothing to push.",
- "cmd.dev.push.repos_with_unpushed": "{{.Count}} repo(s) with unpushed commits:",
- "cmd.dev.push.commits_count": "{{.Count}} commit(s)",
- "cmd.dev.push.confirm_push": "Push {{.Commits}} commit(s) to {{.Repos}} repo(s)?",
- "cmd.dev.push.done_pushed": "Done: {{.Count}} pushed",
- "cmd.dev.pull.all_up_to_date": "All repos up to date. Nothing to pull.",
- "cmd.dev.pull.pulling_repos": "Pulling {{.Count}} repo(s):",
- "cmd.dev.pull.repos_behind": "{{.Count}} repo(s) behind upstream:",
- "cmd.dev.pull.commits_behind": "{{.Count}} commit(s) behind",
- "cmd.dev.pull.pulling": "Pulling",
- "cmd.dev.pull.done_pulled": "Done: {{.Count}} pulled",
- "cmd.dev.health.dirty_label": "Dirty:",
- "cmd.dev.health.ahead_label": "Ahead:",
- "cmd.dev.health.behind_label": "Behind:",
- "cmd.dev.health.errors_label": "Errors:",
- "cmd.dev.health.repos": "repos",
- "cmd.dev.health.dirty": "dirty",
- "cmd.dev.health.to_push": "to push",
- "cmd.dev.health.synced": "synced",
- "cmd.dev.health.up_to_date": "up to date",
- "cmd.dev.health.to_pull": "to pull",
- "cmd.dev.health.errors": "errors",
- "cmd.dev.health.more": "+{{.Count}} more",
- "cmd.dev.work.table_repo": "Repo",
- "cmd.dev.work.table_modified": "Modified",
- "cmd.dev.work.table_untracked": "Untracked",
- "cmd.dev.work.table_staged": "Staged",
- "cmd.dev.work.table_ahead": "Ahead",
- "cmd.dev.work.error_prefix": "error:",
- "cmd.dev.work.use_commit_flag": "Use --commit to have Claude create commits",
- "cmd.dev.work.all_up_to_date": "All repos up to date.",
- "cmd.dev.work.repos_with_unpushed": "{{.Count}} repo(s) with unpushed commits:",
- "cmd.dev.work.commits_count": "{{.Count}} commit(s)",
- "cmd.dev.issues.no_issues": "No open issues found.",
- "cmd.dev.issues.open_issues": "{{.Count}} open issue(s):",
- "cmd.dev.issues.error_label": "Error:",
- "cmd.dev.reviews.no_prs": "No open PRs found.",
- "cmd.dev.reviews.open_prs": "{{.Count}} open PR(s)",
- "cmd.dev.reviews.pending": "{{.Count}} pending",
- "cmd.dev.reviews.approved": "{{.Count}} approved",
- "cmd.dev.reviews.changes_requested": "{{.Count}} changes requested",
- "cmd.dev.reviews.status_approved": "v approved",
- "cmd.dev.reviews.status_changes": "* changes requested",
- "cmd.dev.reviews.status_pending": "o pending review",
- "cmd.dev.reviews.draft": "[draft]",
- "cmd.dev.ci.repos_checked": "{{.Count}} repos checked",
- "cmd.dev.ci.passing": "{{.Count}} passing",
- "cmd.dev.ci.failing": "{{.Count}} failing",
- "cmd.dev.ci.pending": "{{.Count}} pending",
- "cmd.dev.ci.no_ci": "{{.Count}} no CI",
- "cmd.dev.ci.error_label": "Error:",
- "cmd.dev.impact.analysis_for": "Impact analysis for",
- "cmd.dev.impact.no_dependents": "No repos depend on {{.Name}}",
- "cmd.dev.impact.direct_dependents": "{{.Count}} direct dependent(s):",
- "cmd.dev.impact.transitive_dependents": "{{.Count}} transitive dependent(s):",
- "cmd.dev.impact.summary": "Summary:",
- "cmd.dev.impact.changes_affect": "Changes to {{.Repo}} affect {{.Affected}}/{{.Total}} repos",
- "cmd.dev.impact.requires_registry": "impact analysis requires repos.yaml with dependency information",
- "cmd.dev.sync.success": "Public APIs synchronized successfully.",
- "cmd.dev.sync.error_prefix": "Error:",
- "cmd.dev.vm.already_installed": "Dev environment already installed",
- "cmd.dev.vm.check_updates": "Use {{.Command}} to check for updates",
- "cmd.dev.vm.image_label": "Image:",
- "cmd.dev.vm.downloading": "Downloading dev environment...",
- "cmd.dev.vm.progress_label": "Progress:",
- "cmd.dev.vm.installed_in": "Installed in {{.Duration}}",
- "cmd.dev.vm.start_with": "Start with: {{.Command}}",
- "cmd.dev.vm.not_installed": "dev environment not installed (run 'core dev install' first)",
- "cmd.dev.vm.config_label": "Config:",
- "cmd.dev.vm.config_value": "{{.Memory}}MB, {{.CPUs}} CPUs",
- "cmd.dev.vm.booting": "Booting dev environment...",
- "cmd.dev.vm.running": "Dev environment running",
- "cmd.dev.vm.connect_with": "Connect with: {{.Command}}",
- "cmd.dev.vm.ssh_port": "SSH port:",
- "cmd.dev.vm.not_running": "Dev environment is not running",
- "cmd.dev.vm.stopping": "Stopping dev environment...",
- "cmd.dev.vm.stopped": "Stopped",
- "cmd.dev.vm.status_title": "Dev Environment Status",
- "cmd.dev.vm.installed_label": "Installed:",
- "cmd.dev.vm.installed_yes": "Yes",
- "cmd.dev.vm.installed_no": "No",
- "cmd.dev.vm.version_label": "Version:",
- "cmd.dev.vm.install_with": "Install with: {{.Command}}",
- "cmd.dev.vm.status_label": "Status:",
- "cmd.dev.vm.status_running": "Running",
- "cmd.dev.vm.status_stopped": "Stopped",
- "cmd.dev.vm.container_label": "Container:",
- "cmd.dev.vm.memory_label": "Memory:",
- "cmd.dev.vm.cpus_label": "CPUs:",
- "cmd.dev.vm.uptime_label": "Uptime:",
- "cmd.dev.vm.checking_updates": "Checking for updates...",
- "cmd.dev.vm.current_label": "Current:",
- "cmd.dev.vm.latest_label": "Latest:",
- "cmd.dev.vm.up_to_date": "Already up to date",
- "cmd.dev.vm.update_available": "Update available",
- "cmd.dev.vm.run_to_update": "Run {{.Command}} to update",
- "cmd.dev.vm.stopping_current": "Stopping current instance...",
- "cmd.dev.vm.downloading_update": "Downloading update...",
- "cmd.dev.vm.updated_in": "Updated in {{.Duration}}",
- "cmd.php.short": "Laravel/PHP development tools",
- "cmd.php.long": "Manage Laravel development environment with FrankenPHP.\n\nServices orchestrated:\n - FrankenPHP/Octane (port 8000, HTTPS on 443)\n - Vite dev server (port 5173)\n - Laravel Horizon (queue workers)\n - Laravel Reverb (WebSocket, port 8080)\n - Redis (port 6379)",
- "cmd.php.dev.short": "Start Laravel development environment",
- "cmd.php.dev.long": "Starts all detected Laravel services.\n\nAuto-detects:\n - Vite (vite.config.js/ts)\n - Horizon (config/horizon.php)\n - Reverb (config/reverb.php)\n - Redis (from .env)",
- "cmd.php.dev.starting": "Starting {{.AppName}} development environment",
- "cmd.php.dev.detected_services": "Detected services:",
- "cmd.php.dev.services_started": "Services started:",
- "cmd.php.dev.shutting_down": "Shutting down...",
- "cmd.php.dev.all_stopped": "All services stopped",
- "cmd.php.dev.press_ctrl_c": "Press Ctrl+C to stop all services",
- "cmd.php.dev.logs_failed": "Failed to get logs: {{.Error}}",
- "cmd.php.dev.stop_error": "Error stopping services: {{.Error}}",
- "cmd.php.logs.short": "View service logs",
- "cmd.php.logs.long": "Stream logs from Laravel services.\n\nServices: frankenphp, vite, horizon, reverb, redis",
- "cmd.php.stop.short": "Stop all Laravel services",
- "cmd.php.stop.stopping": "Stopping services...",
- "cmd.php.status.short": "Show service status",
- "cmd.php.status.project": "Project:",
- "cmd.php.status.detected_services": "Detected services:",
- "cmd.php.status.package_manager": "Package manager:",
- "cmd.php.status.octane_server": "Octane server:",
- "cmd.php.status.ssl_certs": "SSL certificates:",
- "cmd.php.status.ssl_installed": "installed",
- "cmd.php.status.ssl_not_setup": "not setup",
- "cmd.php.status.running": "running",
- "cmd.php.status.stopped": "stopped",
- "cmd.php.status.error": "error: {{.Error}}",
- "cmd.php.status.port": "port {{.Port}}",
- "cmd.php.status.pid": "pid {{.PID}}",
- "cmd.php.ssl.short": "Setup SSL certificates with mkcert",
- "cmd.php.ssl.setting_up": "Setting up SSL for {{.Domain}}",
- "cmd.php.ssl.mkcert_not_installed": "mkcert is not installed",
- "cmd.php.ssl.install_with": "Install with:",
- "cmd.php.ssl.install_macos": "macOS: brew install mkcert",
- "cmd.php.ssl.install_linux": "Linux: see https://github.com/FiloSottile/mkcert",
- "cmd.php.ssl.certs_exist": "Certificates already exist",
- "cmd.php.ssl.certs_created": "SSL certificates created",
- "cmd.php.ssl.cert_label": "Cert:",
- "cmd.php.ssl.key_label": "Key:",
- "cmd.php.ssl.flag.domain": "Domain for certificate (default: from APP_URL)",
- "cmd.php.dev.flag.no_vite": "Skip Vite dev server",
- "cmd.php.dev.flag.no_horizon": "Skip Laravel Horizon",
- "cmd.php.dev.flag.no_reverb": "Skip Laravel Reverb",
- "cmd.php.dev.flag.no_redis": "Skip Redis server",
- "cmd.php.dev.flag.https": "Enable HTTPS with mkcert",
- "cmd.php.dev.flag.domain": "Domain for SSL certificate (default: from APP_URL or localhost)",
- "cmd.php.dev.flag.port": "FrankenPHP port (default: 8000)",
- "cmd.php.logs.flag.follow": "Follow log output",
- "cmd.php.logs.flag.service": "Specific service (default: all)",
- "cmd.php.build.short": "Build Docker or LinuxKit image",
- "cmd.php.build.long": "Build a production-ready container image for the PHP project.\n\nBy default, builds a Docker image using FrankenPHP.\nUse --type linuxkit to build a LinuxKit VM image instead.",
- "cmd.php.build.building_docker": "Building Docker image...",
- "cmd.php.build.building_linuxkit": "Building LinuxKit image...",
- "cmd.php.build.php_version": "PHP Version:",
- "cmd.php.build.laravel": "Laravel:",
- "cmd.php.build.octane": "Octane:",
- "cmd.php.build.frontend": "Frontend:",
- "cmd.php.build.extensions": "Extensions:",
- "cmd.php.build.image": "Image:",
- "cmd.php.build.platform": "Platform:",
- "cmd.php.build.template": "Template:",
- "cmd.php.build.format": "Format:",
- "cmd.php.build.docker_success": "Docker image built successfully",
- "cmd.php.build.docker_run_with": "Run with:",
- "cmd.php.build.linuxkit_success": "LinuxKit image built successfully",
- "cmd.php.build.flag.type": "Build type: docker (default) or linuxkit",
- "cmd.php.build.flag.name": "Image name (default: project directory name)",
- "cmd.php.build.flag.tag": "Image tag (default: latest)",
- "cmd.php.build.flag.platform": "Target platform (e.g., linux/amd64, linux/arm64)",
- "cmd.php.build.flag.dockerfile": "Path to custom Dockerfile",
- "cmd.php.build.flag.output": "Output path for LinuxKit image",
- "cmd.php.build.flag.format": "LinuxKit output format: qcow2 (default), iso, raw, vmdk",
- "cmd.php.build.flag.template": "LinuxKit template name (default: server-php)",
- "cmd.php.build.flag.no_cache": "Build without cache",
- "cmd.php.serve.short": "Run production container",
- "cmd.php.serve.long": "Run a production PHP container.\n\nThis starts the built Docker image in production mode.",
- "cmd.php.serve.running": "Running production container...",
- "cmd.php.serve.ports": "Ports:",
- "cmd.php.serve.stopped": "Container stopped",
- "cmd.php.serve.name_required": "--name is required: specify the Docker image name",
- "cmd.php.serve.flag.name": "Docker image name (required)",
- "cmd.php.serve.flag.tag": "Image tag (default: latest)",
- "cmd.php.serve.flag.container": "Container name",
- "cmd.php.serve.flag.port": "HTTP port (default: 80)",
- "cmd.php.serve.flag.https_port": "HTTPS port (default: 443)",
- "cmd.php.serve.flag.detach": "Run in detached mode",
- "cmd.php.serve.flag.env_file": "Path to environment file",
- "cmd.php.shell.short": "Open shell in running container",
- "cmd.php.shell.long": "Open an interactive shell in a running PHP container.",
- "cmd.php.shell.opening": "Opening shell in container {{.Container}}...",
- "cmd.php.packages.short": "Manage local PHP packages",
- "cmd.php.packages.long": "Link and manage local PHP packages for development.\n\nSimilar to npm link, this adds path repositories to composer.json\nfor developing packages alongside your project.",
- "cmd.php.packages.link.short": "Link local packages",
- "cmd.php.packages.link.long": "Link local PHP packages for development.\n\nAdds path repositories to composer.json with symlink enabled.\nThe package name is auto-detected from each path's composer.json.",
- "cmd.php.packages.link.linking": "Linking packages...",
- "cmd.php.packages.link.done": "Packages linked. Run 'composer update' to install.",
- "cmd.php.packages.unlink.short": "Unlink packages",
- "cmd.php.packages.unlink.long": "Remove linked packages from composer.json.\n\nRemoves path repositories by package name.",
- "cmd.php.packages.unlink.unlinking": "Unlinking packages...",
- "cmd.php.packages.unlink.done": "Packages unlinked. Run 'composer update' to remove.",
- "cmd.php.packages.update.short": "Update linked packages",
- "cmd.php.packages.update.long": "Run composer update for linked packages.\n\nIf no packages specified, updates all packages.",
- "cmd.php.packages.update.updating": "Updating packages...",
- "cmd.php.packages.update.done": "Packages updated",
- "cmd.php.packages.list.short": "List linked packages",
- "cmd.php.packages.list.long": "List all locally linked packages.\n\nShows package name, path, and version for each linked package.",
- "cmd.php.packages.list.none_found": "No linked packages found",
- "cmd.php.packages.list.linked": "Linked packages:",
- "cmd.php.packages.list.unknown": "(unknown)",
- "cmd.php.packages.list.path": "Path:",
- "cmd.php.packages.list.version": "Version:",
- "cmd.php.test.short": "Run PHP tests (PHPUnit/Pest)",
- "cmd.php.test.long": "Run PHP tests using PHPUnit or Pest.\n\nAuto-detects Pest if tests/Pest.php exists, otherwise uses PHPUnit.",
- "cmd.php.test.running": "Running tests with {{.Runner}}",
- "cmd.php.test.passed": "All tests passed",
- "cmd.php.test.failed": "Some tests failed",
- "cmd.php.test.flag.parallel": "Run tests in parallel",
- "cmd.php.test.flag.coverage": "Generate code coverage",
- "cmd.php.test.flag.filter": "Filter tests by name pattern",
- "cmd.php.test.flag.group": "Run only tests in specified group",
- "cmd.php.fmt.short": "Format PHP code with Laravel Pint",
- "cmd.php.fmt.long": "Format PHP code using Laravel Pint.",
- "cmd.php.fmt.checking": "Checking code with {{.Formatter}}",
- "cmd.php.fmt.formatting": "Formatting code with {{.Formatter}}",
- "cmd.php.fmt.no_formatter": "no formatter found (install Laravel Pint: composer require laravel/pint --dev)",
- "cmd.php.fmt.success": "Code formatted successfully",
- "cmd.php.fmt.no_issues": "No formatting issues found",
- "cmd.php.fmt.flag.fix": "Auto-fix formatting issues",
- "cmd.php.fmt.flag.diff": "Show diff of changes",
- "cmd.php.analyse.short": "Run PHPStan static analysis",
- "cmd.php.analyse.long": "Run PHPStan or Larastan static analysis.\n\nAuto-detects Larastan if installed, otherwise uses PHPStan.",
- "cmd.php.analyse.running": "Running static analysis with {{.Analyzer}}",
- "cmd.php.analyse.no_analyser": "no static analyzer found (install PHPStan: composer require phpstan/phpstan --dev)",
- "cmd.php.analyse.no_issues": "No issues found",
- "cmd.php.analyse.flag.level": "PHPStan analysis level (0-9)",
- "cmd.php.analyse.flag.memory": "Memory limit (e.g., 2G)",
- "cmd.php.psalm.short": "Run Psalm static analysis",
- "cmd.php.psalm.long": "Run Psalm deep static analysis with Laravel plugin support.\n\nPsalm provides deeper type inference than PHPStan and catches\ndifferent classes of bugs. Both should be run for best coverage.",
- "cmd.php.psalm.not_found": "Psalm not found",
- "cmd.php.psalm.install": "composer require --dev vimeo/psalm",
- "cmd.php.psalm.setup": "./vendor/bin/psalm --init",
- "cmd.php.psalm.analysing": "Analysing code with Psalm",
- "cmd.php.psalm.analysing_fixing": "Analysing and fixing code with Psalm",
- "cmd.php.psalm.no_issues": "No issues found",
- "cmd.php.psalm.flag.level": "Error level (1=strictest, 8=most lenient)",
- "cmd.php.psalm.flag.fix": "Auto-fix issues where possible",
- "cmd.php.psalm.flag.baseline": "Generate/update baseline file",
- "cmd.php.psalm.flag.show_info": "Show info-level issues",
- "cmd.php.audit.short": "Security audit for dependencies",
- "cmd.php.audit.long": "Check PHP and JavaScript dependencies for known vulnerabilities.\n\nRuns composer audit and npm audit (if package.json exists).",
- "cmd.php.audit.scanning": "Scanning dependencies for vulnerabilities",
- "cmd.php.audit.secure": "secure",
- "cmd.php.audit.error": "error",
- "cmd.php.audit.vulnerabilities": "{{.Count}} vulnerabilities",
- "cmd.php.audit.found_vulns": "Found {{.Count}} vulnerabilities across dependencies",
- "cmd.php.audit.fix_hint": "composer update && npm update",
- "cmd.php.audit.completed_errors": "audit completed with errors",
- "cmd.php.audit.all_secure": "All dependencies are secure",
- "cmd.php.audit.flag.json": "Output in JSON format",
- "cmd.php.audit.flag.fix": "Auto-fix vulnerabilities (npm only)",
- "cmd.php.security.short": "Security vulnerability scanning",
- "cmd.php.security.long": "Scan for security vulnerabilities in configuration and code.\n\nChecks environment config, file permissions, code patterns,\nand runs security-focused static analysis.",
- "cmd.php.security.running": "Running security checks",
- "cmd.php.security.checks_suffix": " CHECKS:",
- "cmd.php.security.summary": "Security scan complete",
- "cmd.php.security.passed": "Passed:",
- "cmd.php.security.critical": "Critical:",
- "cmd.php.security.high": "High:",
- "cmd.php.security.medium": "Medium:",
- "cmd.php.security.low": "Low:",
- "cmd.php.security.fix_label": "Fix:",
- "cmd.php.security.flag.severity": "Minimum severity (critical, high, medium, low)",
- "cmd.php.security.flag.json": "Output in JSON format",
- "cmd.php.security.flag.sarif": "Output in SARIF format (for GitHub Security)",
- "cmd.php.security.flag.url": "URL to check HTTP headers (optional)",
- "cmd.php.qa.short": "Run full QA pipeline",
- "cmd.php.qa.long": "Run the complete quality assurance pipeline.\n\nStages:\n quick: Security audit, code style, PHPStan\n standard: Psalm, tests\n full: Rector dry-run, mutation testing (slow)",
- "cmd.php.qa.running": "Running QA pipeline ({{.Stages}})",
- "cmd.php.qa.no_checks": "No checks available",
- "cmd.php.qa.stage_prefix": "═══ ",
- "cmd.php.qa.stage_suffix": " STAGE ═══",
- "cmd.php.qa.passed": "passed",
- "cmd.php.qa.failed": "failed",
- "cmd.php.qa.all_passed": "All checks passed ({{.Passed}}/{{.Total}})",
- "cmd.php.qa.some_failed": "Some checks failed ({{.Passed}}/{{.Total}} passed)",
- "cmd.php.qa.to_fix": "To fix:",
- "cmd.php.qa.pipeline_failed": "QA pipeline failed",
- "cmd.php.qa.fix_audit": "composer update && npm update",
- "cmd.php.qa.fix_phpstan": "Fix PHPStan errors shown above",
- "cmd.php.qa.fix_psalm": "Fix Psalm errors shown above",
- "cmd.php.qa.fix_tests": "Fix failing tests shown above",
- "cmd.php.qa.fix_infection": "Improve test coverage for mutated code",
- "cmd.php.qa.issue_vulns": "vulnerabilities",
- "cmd.php.qa.issue_style": "Code style issues found",
- "cmd.php.qa.issue_analysis": "Static analysis errors",
- "cmd.php.qa.issue_types": "Type errors found",
- "cmd.php.qa.issue_tests": "Test failures",
- "cmd.php.qa.issue_rector": "Code improvements available",
- "cmd.php.qa.issue_mutation": "Mutation score below threshold",
- "cmd.php.qa.flag.quick": "Only run quick checks",
- "cmd.php.qa.flag.full": "Run all stages including slow checks",
- "cmd.php.qa.flag.fix": "Auto-fix issues where possible",
- "cmd.php.rector.short": "Automated code refactoring",
- "cmd.php.rector.long": "Run Rector for automated code improvements and PHP upgrades.\n\nRector can automatically upgrade PHP syntax, improve code quality,\nand apply framework-specific refactorings.",
- "cmd.php.rector.not_found": "Rector not found",
- "cmd.php.rector.install": "composer require --dev rector/rector",
- "cmd.php.rector.setup": "./vendor/bin/rector init",
- "cmd.php.rector.analysing": "Analysing code with Rector",
- "cmd.php.rector.refactoring": "Refactoring code with Rector",
- "cmd.php.rector.changes_suggested": "Changes suggested (use --fix to apply)",
- "cmd.php.rector.refactored": "Code refactored successfully",
- "cmd.php.rector.no_changes": "No changes needed",
- "cmd.php.rector.flag.fix": "Apply changes (default is dry-run)",
- "cmd.php.rector.flag.diff": "Show detailed diff of changes",
- "cmd.php.rector.flag.clear_cache": "Clear Rector cache before running",
- "cmd.php.infection.short": "Mutation testing for test quality",
- "cmd.php.infection.long": "Run Infection mutation testing to measure test suite quality.\n\nMutation testing modifies your code and checks if tests catch\nthe changes. High mutation score = high quality tests.\n\nWarning: This can be slow on large codebases.",
- "cmd.php.infection.not_found": "Infection not found",
- "cmd.php.infection.install": "composer require --dev infection/infection",
- "cmd.php.infection.running": "Running mutation testing",
- "cmd.php.infection.note": "This may take a while...",
- "cmd.php.infection.complete": "Mutation testing complete",
- "cmd.php.infection.flag.min_msi": "Minimum mutation score indicator (0-100, default: 50)",
- "cmd.php.infection.flag.min_covered_msi": "Minimum covered mutation score (0-100, default: 70)",
- "cmd.php.infection.flag.threads": "Number of parallel threads (default: 4)",
- "cmd.php.infection.flag.filter": "Filter files by pattern",
- "cmd.php.infection.flag.only_covered": "Only mutate covered code",
- "cmd.php.deploy.short": "Deploy to Coolify",
- "cmd.php.deploy.long": "Deploy the PHP application to Coolify.\n\nRequires configuration in .env:\n COOLIFY_URL=https://coolify.example.com\n COOLIFY_TOKEN=your-api-token\n COOLIFY_APP_ID=production-app-id\n COOLIFY_STAGING_APP_ID=staging-app-id (optional)",
- "cmd.php.deploy.deploying": "Deploying to {{.Environment}}...",
- "cmd.php.deploy.success": "Deployment completed successfully",
- "cmd.php.deploy.warning_status": "Deployment ended with status: {{.Status}}",
- "cmd.php.deploy.triggered": "Deployment triggered. Use 'core php deploy:status' to check progress.",
- "cmd.php.deploy.flag.staging": "Deploy to staging environment",
- "cmd.php.deploy.flag.force": "Force deployment even if no changes detected",
- "cmd.php.deploy.flag.wait": "Wait for deployment to complete",
- "cmd.php.deploy_status.short": "Show deployment status",
- "cmd.php.deploy_status.long": "Show the status of a deployment.",
- "cmd.php.deploy_status.checking": "Checking {{.Environment}} deployment status...",
- "cmd.php.deploy_status.flag.staging": "Check staging environment",
- "cmd.php.deploy_status.flag.id": "Specific deployment ID",
- "cmd.php.deploy_rollback.short": "Rollback to previous deployment",
- "cmd.php.deploy_rollback.long": "Rollback to a previous deployment.\n\nIf no deployment ID is specified, rolls back to the most recent\nsuccessful deployment.",
- "cmd.php.deploy_rollback.rolling_back": "Rolling back {{.Environment}}...",
- "cmd.php.deploy_rollback.success": "Rollback completed successfully",
- "cmd.php.deploy_rollback.warning_status": "Rollback ended with status: {{.Status}}",
- "cmd.php.deploy_rollback.triggered": "Rollback triggered. Use 'core php deploy:status' to check progress.",
- "cmd.php.deploy_rollback.flag.staging": "Rollback staging environment",
- "cmd.php.deploy_rollback.flag.id": "Specific deployment ID to rollback to",
- "cmd.php.deploy_rollback.flag.wait": "Wait for rollback to complete",
- "cmd.php.deploy_list.short": "List recent deployments",
- "cmd.php.deploy_list.long": "List recent deployments.",
- "cmd.php.deploy_list.recent": "Recent {{.Environment}} deployments:",
- "cmd.php.deploy_list.none_found": "No deployments found",
- "cmd.php.deploy_list.flag.staging": "List staging deployments",
- "cmd.php.deploy_list.flag.limit": "Number of deployments to list (default: 10)",
- "cmd.php.label.php": "PHP:",
- "cmd.php.label.services": "Services:",
- "cmd.php.label.running": "Running:",
- "cmd.php.label.app_url": "App URL:",
- "cmd.php.label.vite": "Vite:",
- "cmd.php.label.warning": "Warning:",
- "cmd.php.label.error": "Error:",
- "cmd.php.label.done": "Done:",
- "cmd.php.label.skip": "Skip:",
- "cmd.php.label.info": "Info:",
- "cmd.php.label.install": "Install:",
- "cmd.php.label.setup": "Setup:",
- "cmd.php.label.fix": "Fix:",
- "cmd.php.label.audit": "Audit:",
- "cmd.php.label.security": "Security:",
- "cmd.php.label.summary": "Summary:",
- "cmd.php.label.qa": "QA:",
- "cmd.php.label.psalm": "Psalm:",
- "cmd.php.label.rector": "Rector:",
- "cmd.php.label.infection": "Infection:",
- "cmd.php.label.deploy": "Deploy:",
- "cmd.php.label.status": "Status:",
- "cmd.php.label.id": "ID:",
- "cmd.php.label.url": "URL:",
- "cmd.php.label.branch": "Branch:",
- "cmd.php.label.commit": "Commit:",
- "cmd.php.label.message": "Message:",
- "cmd.php.label.started": "Started:",
- "cmd.php.label.completed": "Completed:",
- "cmd.php.label.duration": "Duration:",
- "cmd.php.error.not_laravel": "not a Laravel project (missing artisan or laravel/framework)",
- "cmd.php.error.not_laravel_short": "not a Laravel project",
- "cmd.php.error.not_php": "not a PHP project (missing composer.json)",
- "cmd.php.error.working_dir": "failed to get working directory",
- "cmd.php.error.start_services": "failed to start services",
- "cmd.php.error.stop_services": "failed to stop services",
- "cmd.php.error.get_logs": "failed to get logs",
- "cmd.php.error.detect_config": "failed to detect project configuration",
- "cmd.php.error.build_failed": "build failed",
- "cmd.php.error.start_container": "failed to start container",
- "cmd.php.error.open_shell": "failed to open shell",
- "cmd.php.error.link_packages": "failed to link packages",
- "cmd.php.error.unlink_packages": "failed to unlink packages",
- "cmd.php.error.update_packages": "composer update failed",
- "cmd.php.error.list_packages": "failed to list packages",
- "cmd.php.error.tests_failed": "tests failed",
- "cmd.php.error.fmt_failed": "formatting failed",
- "cmd.php.error.fmt_issues": "formatting issues found",
- "cmd.php.error.analysis_issues": "analysis found issues",
- "cmd.php.error.psalm_issues": "psalm found issues",
- "cmd.php.error.psalm_not_installed": "psalm not installed",
- "cmd.php.error.audit_failed": "audit failed",
- "cmd.php.error.vulns_found": "vulnerabilities found",
- "cmd.php.error.security_failed": "security check failed",
- "cmd.php.error.critical_high_issues": "critical or high severity issues found",
- "cmd.php.error.rector_failed": "rector failed",
- "cmd.php.error.rector_not_installed": "rector not installed",
- "cmd.php.error.infection_failed": "mutation testing failed",
- "cmd.php.error.infection_not_installed": "infection not installed",
- "cmd.php.error.mkcert_not_installed": "mkcert not installed",
- "cmd.php.error.ssl_setup": "failed to setup SSL",
- "cmd.php.error.deploy_failed": "deployment failed",
- "cmd.php.error.status_failed": "failed to get status",
- "cmd.php.error.rollback_failed": "rollback failed",
- "cmd.php.error.list_deployments": "failed to list deployments",
- "cmd.go.short": "Go development tools",
- "cmd.go.long": "Go development tools with enhanced output and environment setup.\n\nCommands:\n test Run tests\n cov Run tests with coverage report\n fmt Format Go code\n lint Run golangci-lint\n install Install Go binary\n mod Module management (tidy, download, verify)\n work Workspace management",
- "cmd.go.test.short": "Run tests with coverage",
- "cmd.go.test.long": "Run Go tests with coverage reporting.\n\nSets MACOSX_DEPLOYMENT_TARGET=26.0 to suppress linker warnings.\nFilters noisy output and provides color-coded coverage.\n\nExamples:\n core go test\n core go test --coverage\n core go test --pkg ./pkg/crypt\n core go test --run TestHash",
- "cmd.go.test.label": "Test:",
- "cmd.go.test.running": "Running tests",
- "cmd.go.test.package_label": "Package:",
- "cmd.go.test.passed": "{{.Count}} passed",
- "cmd.go.test.passed_failed": "{{.Passed}} passed, {{.Failed}} failed",
- "cmd.go.test.all_passed": "PASS All tests passed",
- "cmd.go.test.some_failed": "FAIL Some tests failed",
- "cmd.go.test.coverage": "Coverage",
- "cmd.go.test.flag.coverage": "Show detailed per-package coverage",
- "cmd.go.test.flag.pkg": "Package to test (default: ./...)",
- "cmd.go.test.flag.run": "Run only tests matching regexp",
- "cmd.go.test.flag.short": "Run only short tests",
- "cmd.go.test.flag.race": "Enable race detector",
- "cmd.go.test.flag.json": "Output JSON results",
- "cmd.go.test.flag.verbose": "Verbose output",
- "cmd.go.cov.short": "Run tests with coverage report",
- "cmd.go.cov.long": "Run tests and generate coverage report.\n\nExamples:\n core go cov # Run with coverage summary\n core go cov --html # Generate HTML report\n core go cov --open # Generate and open HTML report\n core go cov --threshold 80 # Fail if coverage < 80%",
- "cmd.go.cov.label": "Coverage:",
- "cmd.go.cov.running": "Running tests with coverage",
- "cmd.go.cov.html_label": "HTML:",
- "cmd.go.cov.open_manually": "(open manually)",
- "cmd.go.cov.below_threshold": "FAIL Coverage {{.Actual}}% is below threshold {{.Threshold}}%",
- "cmd.go.cov.error.discover": "failed to discover test packages",
- "cmd.go.cov.error.no_packages": "no test packages found",
- "cmd.go.cov.error.create_file": "failed to create coverage file",
- "cmd.go.cov.error.get_coverage": "failed to get coverage",
- "cmd.go.cov.error.generate_html": "failed to generate HTML",
- "cmd.go.cov.error.below_threshold": "coverage below threshold",
- "cmd.go.cov.flag.pkg": "Package to test (default: ./...)",
- "cmd.go.cov.flag.html": "Generate HTML coverage report",
- "cmd.go.cov.flag.open": "Generate and open HTML report in browser",
- "cmd.go.cov.flag.threshold": "Minimum coverage percentage (exit 1 if below)",
- "cmd.go.fmt.short": "Format Go code",
- "cmd.go.fmt.long": "Format Go code using gofmt or goimports.\n\nExamples:\n core go fmt # Check formatting\n core go fmt --fix # Fix formatting\n core go fmt --diff # Show diff",
- "cmd.go.fmt.flag.fix": "Fix formatting in place",
- "cmd.go.fmt.flag.diff": "Show diff of changes",
- "cmd.go.fmt.flag.check": "Check only, exit 1 if not formatted",
- "cmd.go.lint.short": "Run golangci-lint",
- "cmd.go.lint.long": "Run golangci-lint on the codebase.\n\nExamples:\n core go lint\n core go lint --fix",
- "cmd.go.lint.flag.fix": "Fix issues automatically",
- "cmd.go.install.short": "Install Go binary",
- "cmd.go.install.long": "Install Go binary to $GOPATH/bin.\n\nExamples:\n core go install # Install current module\n core go install ./cmd/core # Install specific path\n core go install --no-cgo # Pure Go (no C dependencies)\n core go install -v # Verbose output",
- "cmd.go.install.label": "Install:",
- "cmd.go.install.installing": "Installing",
- "cmd.go.install.path_label": "Path:",
- "cmd.go.install.cgo_label": "CGO:",
- "cmd.go.install.cgo_disabled": "disabled",
- "cmd.go.install.failed": "FAIL Install failed",
- "cmd.go.install.success": "OK",
- "cmd.go.install.installed_to": "Installed to {{.Path}}",
- "cmd.go.install.flag.verbose": "Verbose output",
- "cmd.go.install.flag.no_cgo": "Disable CGO (CGO_ENABLED=0)",
- "cmd.go.mod.short": "Module management",
- "cmd.go.mod.long": "Go module management commands.\n\nCommands:\n tidy Add missing and remove unused modules\n download Download modules to local cache\n verify Verify dependencies\n graph Print module dependency graph",
- "cmd.go.mod.tidy.short": "Tidy go.mod",
- "cmd.go.mod.download.short": "Download modules",
- "cmd.go.mod.verify.short": "Verify dependencies",
- "cmd.go.mod.graph.short": "Print dependency graph",
- "cmd.go.work.short": "Workspace management",
- "cmd.go.work.long": "Go workspace management commands.\n\nCommands:\n sync Sync go.work with modules\n init Initialize go.work\n use Add module to workspace",
- "cmd.go.work.sync.short": "Sync workspace",
- "cmd.go.work.init.short": "Initialize workspace",
- "cmd.go.work.use.short": "Add module to workspace",
- "cmd.go.work.added": "Added {{.Module}}",
- "cmd.go.work.error.no_modules": "no go.mod files found",
- "cmd.go.build.short": "Build Go binaries",
- "cmd.doctor.short": "Check development environment",
- "cmd.doctor.long": "Checks that all required tools are installed and configured.\nRun this before 'core setup' to ensure your environment is ready.",
- "cmd.doctor.checking": "Checking development environment...",
- "cmd.doctor.required": "Required:",
- "cmd.doctor.optional": "Optional:",
- "cmd.doctor.github": "GitHub Access:",
- "cmd.doctor.workspace": "Workspace:",
- "cmd.doctor.ready": "Doctor: Environment ready",
- "cmd.doctor.issues": "Doctor: {{.Count}} issues found",
- "cmd.doctor.issues_error": "{{.Count}} required tools missing",
- "cmd.doctor.install_missing": "Install missing tools:",
- "cmd.doctor.verbose_flag": "Show detailed version information",
- "cmd.doctor.ssh_found": "SSH key found",
- "cmd.doctor.ssh_missing": "SSH key missing - run: ssh-keygen && gh ssh-key add",
- "cmd.doctor.cli_auth": "CLI authenticated",
- "cmd.doctor.cli_auth_missing": "CLI authentication - run: gh auth login",
- "cmd.doctor.repos_yaml_found": "Found repos.yaml at {{.Path}}",
- "cmd.doctor.repos_cloned": "{{.Cloned}}/{{.Total}} repos cloned",
- "cmd.doctor.no_repos_yaml": "No repos.yaml found (run from workspace directory)",
- "cmd.doctor.install_macos": "brew install git gh php composer node pnpm docker",
- "cmd.doctor.install_macos_cask": "brew install --cask claude",
- "cmd.doctor.install_linux_header": "# Install via your package manager or:",
- "cmd.doctor.install_linux_git": "# Git: apt install git",
- "cmd.doctor.install_linux_gh": "# GitHub CLI: https://cli.github.com/",
- "cmd.doctor.install_linux_php": "# PHP: apt install php8.3-cli",
- "cmd.doctor.install_linux_node": "# Node: https://nodejs.org/",
- "cmd.doctor.install_linux_pnpm": "# pnpm: npm install -g pnpm",
- "cmd.doctor.install_other": "See documentation for your OS",
- "cmd.doctor.check.git.name": "Git",
- "cmd.doctor.check.git.description": "Version control",
- "cmd.doctor.check.gh.name": "GitHub CLI",
- "cmd.doctor.check.gh.description": "GitHub integration (issues, PRs, CI)",
- "cmd.doctor.check.php.name": "PHP",
- "cmd.doctor.check.php.description": "Laravel packages",
- "cmd.doctor.check.composer.name": "Composer",
- "cmd.doctor.check.composer.description": "PHP dependencies",
- "cmd.doctor.check.node.name": "Node.js",
- "cmd.doctor.check.node.description": "Frontend builds",
- "cmd.doctor.check.pnpm.name": "pnpm",
- "cmd.doctor.check.pnpm.description": "Fast package manager",
- "cmd.doctor.check.claude.name": "Claude Code",
- "cmd.doctor.check.claude.description": "AI-assisted development",
- "cmd.doctor.check.docker.name": "Docker",
- "cmd.doctor.check.docker.description": "Container runtime",
- "cmd.setup.short": "Bootstrap workspace or clone packages from registry",
- "cmd.setup.long": "Sets up a development workspace.\n\nREGISTRY MODE (repos.yaml exists):\n Clones all repositories defined in repos.yaml into packages/.\n Skips repos that already exist. Use --only to filter by type.\n\nBOOTSTRAP MODE (no repos.yaml):\n 1. Clones core-devops to set up the workspace\n 2. Presents an interactive wizard to select packages\n 3. Clones selected packages\n\nUse --all to skip the wizard and clone everything.",
- "cmd.setup.flag.registry": "Path to repos.yaml (auto-detected if not specified)",
- "cmd.setup.flag.only": "Only clone repos of these types (comma-separated: foundation,module,product)",
- "cmd.setup.flag.dry_run": "Show what would be cloned without cloning",
- "cmd.setup.flag.all": "Skip wizard, clone all packages (non-interactive)",
- "cmd.setup.flag.name": "Project directory name for bootstrap mode",
- "cmd.setup.flag.build": "Run build after cloning",
- "cmd.setup.bootstrap_mode": "Bootstrap mode (no repos.yaml found)",
- "cmd.setup.cloning_current_dir": "Cloning into current directory",
- "cmd.setup.creating_project_dir": "Creating project directory",
- "cmd.setup.cloning": "Cloning",
- "cmd.setup.cloned": "cloned",
- "cmd.setup.would_clone": "Would clone",
- "cmd.setup.already_exists": "already exists",
- "cmd.setup.would_load_registry": "Would load registry from",
- "cmd.setup.registry_label": "Registry:",
- "cmd.setup.org_label": "Org:",
- "cmd.setup.target_label": "Target:",
- "cmd.setup.filter_label": "Filter:",
- "cmd.setup.to_clone": "{{.Count}} to clone",
- "cmd.setup.exist": "{{.Count}} exist",
- "cmd.setup.skipped": "{{.Count}} skipped",
- "cmd.setup.nothing_to_clone": "Nothing to clone.",
- "cmd.setup.would_clone_list": "Would clone:",
- "cmd.setup.cancelled": "Cancelled.",
- "cmd.setup.done": "done",
- "cmd.setup.done_label": "Done:",
- "cmd.setup.cloned_count": "{{.Count}} cloned",
- "cmd.setup.failed_count": "{{.Count}} failed",
- "cmd.setup.already_exist_count": "{{.Count}} already exist",
- "cmd.setup.running_build": "Running build...",
- "cmd.setup.complete": "Setup complete",
- "cmd.setup.repo.setting_up": "Setting up repository",
- "cmd.setup.repo.detected_type": "Detected project type",
- "cmd.setup.repo.would_create": "Would create",
- "cmd.setup.repo.created": "Created",
- "cmd.setup.wizard.git_repo_title": "This directory is a git repository",
- "cmd.setup.wizard.what_to_do": "What would you like to do?",
- "cmd.setup.wizard.option_setup": "Setup Working Directory",
- "cmd.setup.wizard.option_package": "Create Package (clone repos into subdirectory)",
- "cmd.setup.wizard.project_name_title": "Project directory name",
- "cmd.setup.wizard.project_name_desc": "Enter the name for your new workspace directory",
- "cmd.setup.wizard.package_selection": "Package Selection",
- "cmd.setup.wizard.selection_hint": "Use space to select/deselect, enter to confirm",
- "cmd.setup.wizard.select_packages": "Select packages to clone",
- "cmd.setup.wizard.confirm_clone": "Clone {{.Count}} packages to {{.Target}}?",
- "cmd.setup.wizard.confirm_yes": "Yes, clone",
- "cmd.setup.wizard.confirm_cancel": "Cancel",
- "cmd.setup.error.build_failed": "build failed",
- "cmd.build.short": "Build projects with auto-detection and cross-compilation",
- "cmd.build.long": "Builds the current project with automatic type detection.\nSupports Go, Wails, Docker, LinuxKit, and Taskfile projects.\nConfiguration can be provided via .core/build.yaml or command-line flags.\n\nExamples:\n core build # Auto-detect and build\n core build --type docker # Build Docker image\n core build --type linuxkit # Build LinuxKit image\n core build --type linuxkit --config linuxkit.yml --format qcow2-bios",
- "cmd.build.from_path.short": "Build from a local directory",
- "cmd.build.from_path.starting": "Starting build from path:",
- "cmd.build.from_path.generating_template": "Generating application from template...",
- "cmd.build.from_path.copying_files": "Copying application files...",
- "cmd.build.from_path.compiling": "Compiling application...",
- "cmd.build.from_path.success": "Build successful! Executable created at:",
- "cmd.build.from_path.flag.path": "The path to the static web application files",
- "cmd.build.from_path.error.invalid_path": "invalid path specified",
- "cmd.build.from_path.error.must_be_directory": "path specified must be a directory",
- "cmd.build.from_path.error.clean_build_dir": "failed to clean build directory",
- "cmd.build.from_path.error.anchor_template": "failed to anchor template filesystem",
- "cmd.build.from_path.error.create_sod": "failed to create new sod instance",
- "cmd.build.from_path.error.extract_template": "failed to extract template",
- "cmd.build.from_path.error.copy_files": "failed to copy application files",
- "cmd.build.from_path.error.go_mod_tidy": "go mod tidy failed",
- "cmd.build.from_path.error.go_build": "go build failed",
- "cmd.build.pwa.short": "Build from a live PWA URL",
- "cmd.build.pwa.starting": "Starting PWA build from URL:",
- "cmd.build.pwa.downloading_to": "Downloading PWA to temporary directory:",
- "cmd.build.pwa.found_manifest": "Found manifest:",
- "cmd.build.pwa.download_complete": "PWA download complete.",
- "cmd.build.pwa.warning": "Warning:",
- "cmd.build.pwa.no_manifest": "no manifest file found. Proceeding with basic site download.",
- "cmd.build.pwa.asset_download_failed": "failed to download asset",
- "cmd.build.pwa.flag.url": "The URL of the PWA to build",
- "cmd.build.pwa.error.create_temp_dir": "failed to create temporary directory",
- "cmd.build.pwa.error.download_failed": "failed to download PWA",
- "cmd.build.pwa.error.fetch_url": "failed to fetch URL",
- "cmd.build.pwa.error.read_response": "failed to read response body",
- "cmd.build.pwa.error.write_index": "failed to write index.html",
- "cmd.build.pwa.error.fetch_manifest": "failed to fetch or parse manifest",
- "cmd.build.pwa.error.no_manifest_tag": "no tag found",
- "cmd.build.sdk.short": "Generate API SDKs from OpenAPI spec",
- "cmd.build.sdk.long": "Generates typed API clients from OpenAPI specifications.\nSupports TypeScript, Python, Go, and PHP.\n\nExamples:\n core build sdk # Generate all configured SDKs\n core build sdk --lang typescript # Generate only TypeScript SDK\n core build sdk --spec api.yaml # Use specific OpenAPI spec",
- "cmd.build.sdk.label": "Build SDK:",
- "cmd.build.sdk.generating": "Generating SDKs",
- "cmd.build.sdk.dry_run_mode": "(dry-run mode)",
- "cmd.build.sdk.spec_label": "Spec:",
- "cmd.build.sdk.language_label": "Language:",
- "cmd.build.sdk.languages_label": "Languages:",
- "cmd.build.sdk.generated_label": "Generated:",
- "cmd.build.sdk.would_generate": "Would generate SDKs (dry-run)",
- "cmd.build.sdk.complete": "SDK generation complete",
- "cmd.build.sdk.flag.spec": "Path to OpenAPI spec file",
- "cmd.build.sdk.flag.lang": "Generate only this language (typescript, python, go, php)",
- "cmd.build.sdk.flag.version": "Version to embed in generated SDKs",
- "cmd.build.sdk.flag.dry_run": "Show what would be generated without writing files",
- "cmd.build.flag.type": "Builder type (go, wails, docker, linuxkit, taskfile) - auto-detected if not specified",
- "cmd.build.flag.ci": "CI mode - minimal output with JSON artifact list at the end",
- "cmd.build.flag.targets": "Comma-separated OS/arch pairs (e.g., linux/amd64,darwin/arm64)",
- "cmd.build.flag.output": "Output directory for artifacts (default: dist)",
- "cmd.build.flag.archive": "Create archives (tar.gz for linux/darwin, zip for windows)",
- "cmd.build.flag.checksum": "Generate SHA256 checksums and CHECKSUMS.txt",
- "cmd.build.flag.config": "Config file path (for linuxkit: YAML config, for docker: Dockerfile)",
- "cmd.build.flag.format": "Output format for linuxkit (iso-bios, qcow2-bios, raw, vmdk)",
- "cmd.build.flag.push": "Push Docker image after build",
- "cmd.build.flag.image": "Docker image name (e.g., host-uk/core-devops)",
- "cmd.build.flag.no_sign": "Skip all code signing",
- "cmd.build.flag.notarize": "Enable macOS notarization (requires Apple credentials)",
- "cmd.build.label.build": "Build:",
- "cmd.build.label.type": "Type:",
- "cmd.build.label.output": "Output:",
- "cmd.build.label.binary": "Binary:",
- "cmd.build.label.targets": "Targets:",
- "cmd.build.label.error": "Error:",
- "cmd.build.label.success": "Success:",
- "cmd.build.label.sign": "Sign:",
- "cmd.build.label.archive": "Archive:",
- "cmd.build.label.checksum": "Checksum:",
- "cmd.build.label.ok": "OK:",
- "cmd.build.building_project": "Building project",
- "cmd.build.built_artifacts": "Built {{.Count}} artifact(s)",
- "cmd.build.signing_binaries": "Signing binaries...",
- "cmd.build.creating_archives": "Creating archives...",
- "cmd.build.computing_checksums": "Computing checksums...",
- "cmd.build.error.working_dir": "failed to get working directory",
- "cmd.build.error.load_config": "failed to load config",
- "cmd.build.error.detect_type": "failed to detect project type",
- "cmd.build.error.no_project_type": "no supported project type detected in {{.Dir}}\nSupported types: go (go.mod), wails (wails.json), node (package.json), php (composer.json)",
- "cmd.build.error.build_failed": "build failed",
- "cmd.build.error.signing_failed": "signing failed",
- "cmd.build.error.notarization_failed": "notarization failed",
- "cmd.build.error.archive_failed": "archive failed",
- "cmd.build.error.marshal_artifacts": "failed to marshal artifacts",
- "cmd.build.error.checksum_failed": "checksum failed",
- "cmd.build.error.write_checksums": "failed to write CHECKSUMS.txt",
- "cmd.build.error.gpg_signing_failed": "GPG signing failed",
- "cmd.build.error.invalid_target": "invalid target format \"{{.Target}}\", expected OS/arch (e.g., linux/amd64)",
- "cmd.build.error.no_targets": "no valid targets specified",
- "cmd.build.error.node_not_implemented": "Node.js builder not yet implemented",
- "cmd.build.error.php_not_implemented": "PHP builder not yet implemented",
- "cmd.build.error.unsupported_type": "unsupported project type",
- "cmd.ai.short": "AI agent task management",
- "cmd.ai.long": "Manage tasks from the core-agentic service for AI-assisted development.\n\nCommands:\n tasks List tasks (filterable by status, priority, labels)\n task View task details or auto-select highest priority\n task:update Update task status or progress\n task:complete Mark task as completed or failed\n task:commit Create git commit with task reference\n task:pr Create GitHub PR linked to task\n claude Claude Code integration\n\nWorkflow:\n core ai tasks # List pending tasks\n core ai task --auto --claim # Auto-select and claim a task\n core ai task:commit -m 'msg' # Commit with task reference\n core ai task:complete # Mark task done",
- "cmd.ai.claude.short": "Claude Code integration",
- "cmd.ai.claude.long": "Tools for working with Claude Code.\n\nCommands:\n run Run Claude in the current directory\n config Manage Claude configuration",
- "cmd.ai.claude.run.short": "Run Claude Code in the current directory",
- "cmd.ai.claude.config.short": "Manage Claude configuration",
- "cmd.ai.tasks.short": "List available tasks from core-agentic",
- "cmd.ai.tasks.long": "Lists tasks from the core-agentic service.\n\nConfiguration is loaded from:\n 1. Environment variables (AGENTIC_TOKEN, AGENTIC_BASE_URL)\n 2. .env file in current directory\n 3. ~/.core/agentic.yaml\n\nExamples:\n core ai tasks\n core ai tasks --status pending --priority high\n core ai tasks --labels bug,urgent",
- "cmd.ai.tasks.none_found": "No tasks found.",
- "cmd.ai.tasks.found": "{{.Count}} task(s) found:",
- "cmd.ai.tasks.hint": "Use 'core ai task ' to view details",
- "cmd.ai.tasks.flag.status": "Filter by status (pending, in_progress, completed, blocked)",
- "cmd.ai.tasks.flag.priority": "Filter by priority (critical, high, medium, low)",
- "cmd.ai.tasks.flag.labels": "Filter by labels (comma-separated)",
- "cmd.ai.tasks.flag.limit": "Max number of tasks to return",
- "cmd.ai.tasks.flag.project": "Filter by project",
- "cmd.ai.task.short": "Show task details or auto-select a task",
- "cmd.ai.task.long": "Shows details of a specific task or auto-selects the highest priority task.\n\nExamples:\n core ai task abc123 # Show task details\n core ai task abc123 --claim # Show and claim the task\n core ai task abc123 --context # Show task with gathered context\n core ai task --auto # Auto-select highest priority pending task",
- "cmd.ai.task.no_pending": "No pending tasks available.",
- "cmd.ai.task.id_required": "task ID required (or use --auto)",
- "cmd.ai.task.context_failed": "Failed to build context",
- "cmd.ai.task.claiming": "Claiming task...",
- "cmd.ai.task.claimed": "Task claimed successfully!",
- "cmd.ai.task.flag.auto": "Auto-select highest priority pending task",
- "cmd.ai.task.flag.claim": "Claim the task after showing details",
- "cmd.ai.task.flag.context": "Show gathered context for AI collaboration",
- "cmd.ai.task_update.short": "Update task status or progress",
- "cmd.ai.task_update.long": "Updates a task's status, progress, or adds notes.\n\nExamples:\n core ai task:update abc123 --status in_progress\n core ai task:update abc123 --progress 50 --notes 'Halfway done'",
- "cmd.ai.task_update.flag_required": "at least one of --status, --progress, or --notes required",
- "cmd.ai.task_update.success": "Task {{.ID}} updated successfully",
- "cmd.ai.task_update.flag.status": "New status (pending, in_progress, completed, blocked)",
- "cmd.ai.task_update.flag.progress": "Progress percentage (0-100)",
- "cmd.ai.task_update.flag.notes": "Notes about the update",
- "cmd.ai.task_complete.short": "Mark a task as completed",
- "cmd.ai.task_complete.long": "Marks a task as completed with optional output and artifacts.\n\nExamples:\n core ai task:complete abc123 --output 'Feature implemented'\n core ai task:complete abc123 --failed --error 'Build failed'",
- "cmd.ai.task_complete.success": "Task {{.ID}} completed successfully",
- "cmd.ai.task_complete.failed": "Task {{.ID}} marked as failed",
- "cmd.ai.task_complete.flag.output": "Summary of the completed work",
- "cmd.ai.task_complete.flag.failed": "Mark the task as failed",
- "cmd.ai.task_complete.flag.error": "Error message if failed",
- "cmd.ai.task_commit.short": "Auto-commit changes with task reference",
- "cmd.ai.task_commit.long": "Creates a git commit with a task reference and co-author attribution.\n\nCommit message format:\n feat(scope): description\n\n Task: #123\n Co-Authored-By: Claude \n\nExamples:\n core ai task:commit abc123 --message 'add user authentication'\n core ai task:commit abc123 -m 'fix login bug' --scope auth\n core ai task:commit abc123 -m 'update docs' --push",
- "cmd.ai.task_commit.message_required": "commit message required (--message or -m)",
- "cmd.ai.task_commit.no_changes": "No uncommitted changes to commit.",
- "cmd.ai.task_commit.creating": "Creating commit for task {{.ID}}...",
- "cmd.ai.task_commit.committed": "Committed:",
- "cmd.ai.task_commit.pushing": "Pushing changes...",
- "cmd.ai.task_commit.pushed": "Changes pushed successfully",
- "cmd.ai.task_commit.flag.message": "Commit message (without task reference)",
- "cmd.ai.task_commit.flag.scope": "Scope for the commit type (e.g., auth, api, ui)",
- "cmd.ai.task_commit.flag.push": "Push changes after committing",
- "cmd.ai.task_pr.short": "Create a pull request for a task",
- "cmd.ai.task_pr.long": "Creates a GitHub pull request linked to a task.\n\nRequires the GitHub CLI (gh) to be installed and authenticated.\n\nExamples:\n core ai task:pr abc123\n core ai task:pr abc123 --title 'Add authentication feature'\n core ai task:pr abc123 --draft --labels 'enhancement,needs-review'\n core ai task:pr abc123 --base develop",
- "cmd.ai.task_pr.branch_error": "cannot create PR from {{.Branch}} branch; create a feature branch first",
- "cmd.ai.task_pr.pushing_branch": "Pushing branch {{.Branch}}...",
- "cmd.ai.task_pr.creating": "Creating pull request...",
- "cmd.ai.task_pr.created": "Pull request created!",
- "cmd.ai.task_pr.flag.title": "PR title (defaults to task title)",
- "cmd.ai.task_pr.flag.draft": "Create as draft PR",
- "cmd.ai.task_pr.flag.labels": "Labels to add (comma-separated)",
- "cmd.ai.task_pr.flag.base": "Base branch (defaults to main)",
- "cmd.ai.priority.critical": "CRITICAL",
- "cmd.ai.priority.high": "HIGH",
- "cmd.ai.priority.medium": "MEDIUM",
- "cmd.ai.priority.low": "LOW",
- "cmd.ai.status.pending": "pending",
- "cmd.ai.status.in_progress": "in_progress",
- "cmd.ai.status.completed": "completed",
- "cmd.ai.status.blocked": "blocked",
- "cmd.ai.label.id": "ID:",
- "cmd.ai.label.title": "Title:",
- "cmd.ai.label.priority": "Priority:",
- "cmd.ai.label.status": "Status:",
- "cmd.ai.label.project": "Project:",
- "cmd.ai.label.labels": "Labels:",
- "cmd.ai.label.claimed_by": "Claimed by:",
- "cmd.ai.label.created": "Created:",
- "cmd.ai.label.description": "Description:",
- "cmd.ai.label.related_files": "Related files:",
- "cmd.ai.label.blocked_by": "Blocked by:",
- "cmd.ai.label.url": "URL:",
- "cmd.ai.error.load_config": "failed to load config",
- "cmd.ai.error.list_tasks": "failed to list tasks",
- "cmd.ai.error.get_task": "failed to get task",
- "cmd.ai.error.claim_task": "failed to claim task",
- "cmd.ai.error.update_task": "failed to update task",
- "cmd.ai.error.complete_task": "failed to complete task",
- "cmd.ai.error.working_dir": "failed to get working directory",
- "cmd.ai.error.git_status": "failed to check git status",
- "cmd.ai.error.commit": "failed to commit",
- "cmd.ai.error.push": "failed to push",
- "cmd.ai.error.get_branch": "failed to get current branch",
- "cmd.ai.error.push_branch": "failed to push branch",
- "cmd.ai.error.create_pr": "failed to create PR",
- "cmd.vm.short": "LinuxKit VM management",
- "cmd.vm.long": "Manage LinuxKit virtual machines.\n\nLinuxKit VMs are lightweight, immutable VMs built from YAML templates.\nThey run using qemu or hyperkit depending on your system.\n\nCommands:\n run Run a VM from image or template\n ps List running VMs\n stop Stop a running VM\n logs View VM logs\n exec Execute command in VM\n templates Manage LinuxKit templates",
- "cmd.vm.run.short": "Run a LinuxKit image or template",
- "cmd.vm.run.long": "Runs a LinuxKit image as a VM using the available hypervisor.\n\nSupported image formats: .iso, .qcow2, .vmdk, .raw\n\nYou can also run from a template using --template, which will build and run\nthe image automatically. Use --var to set template variables.\n\nExamples:\n core vm run image.iso\n core vm run -d image.qcow2\n core vm run --name myvm --memory 2048 --cpus 4 image.iso\n core vm run --template core-dev --var SSH_KEY=\"ssh-rsa AAAA...\"\n core vm run --template server-php --var SSH_KEY=\"...\" --var DOMAIN=example.com",
- "cmd.vm.run.flag.name": "Name for the container",
- "cmd.vm.run.flag.detach": "Run in detached mode (background)",
- "cmd.vm.run.flag.memory": "Memory in MB (default: 1024)",
- "cmd.vm.run.flag.cpus": "Number of CPUs (default: 1)",
- "cmd.vm.run.flag.ssh_port": "SSH port for exec commands (default: 2222)",
- "cmd.vm.run.flag.template": "Run from a LinuxKit template (build + run)",
- "cmd.vm.run.flag.var": "Template variable in KEY=VALUE format (can be repeated)",
- "cmd.vm.run.error.image_required": "image path is required (or use --template)",
- "cmd.vm.ps.short": "List running VMs",
- "cmd.vm.ps.long": "Lists all VMs. By default, only shows running VMs.\n\nExamples:\n core vm ps\n core vm ps -a",
- "cmd.vm.ps.flag.all": "Show all containers (including stopped)",
- "cmd.vm.ps.header": "ID\tNAME\tIMAGE\tSTATUS\tSTARTED\tPID",
- "cmd.vm.ps.no_containers": "No containers",
- "cmd.vm.ps.no_running": "No running containers",
- "cmd.vm.stop.short": "Stop a running VM",
- "cmd.vm.stop.long": "Stops a running VM by ID.\n\nExamples:\n core vm stop abc12345\n core vm stop abc1",
- "cmd.vm.stop.stopping": "Stopping:",
- "cmd.vm.stop.stopped": "Stopped",
- "cmd.vm.logs.short": "View VM logs",
- "cmd.vm.logs.long": "View logs from a VM.\n\nExamples:\n core vm logs abc12345\n core vm logs -f abc1",
- "cmd.vm.logs.flag.follow": "Follow log output",
- "cmd.vm.exec.short": "Execute a command in a VM",
- "cmd.vm.exec.long": "Execute a command inside a running VM via SSH.\n\nExamples:\n core vm exec abc12345 ls -la\n core vm exec abc1 /bin/sh",
- "cmd.vm.templates.short": "Manage LinuxKit templates",
- "cmd.vm.templates.long": "Manage LinuxKit YAML templates for building VMs.\n\nTemplates provide pre-configured LinuxKit configurations for common use cases.\nThey support variable substitution with ${VAR} and ${VAR:-default} syntax.\n\nExamples:\n core vm templates # List available templates\n core vm templates show core-dev # Show template content\n core vm templates vars server-php # Show template variables",
- "cmd.vm.templates.title": "Available LinuxKit Templates",
- "cmd.vm.templates.header": "NAME\tDESCRIPTION",
- "cmd.vm.templates.no_templates": "No templates available.",
- "cmd.vm.templates.hint.show": "Show template:",
- "cmd.vm.templates.hint.vars": "Show variables:",
- "cmd.vm.templates.hint.run": "Run from template:",
- "cmd.vm.templates.show.short": "Display template content",
- "cmd.vm.templates.show.long": "Display the content of a LinuxKit template.\n\nExamples:\n core templates show core-dev\n core templates show server-php",
- "cmd.vm.templates.vars.short": "Show template variables",
- "cmd.vm.templates.vars.long": "Display all variables used in a template.\n\nShows required variables (no default) and optional variables (with defaults).\n\nExamples:\n core templates vars core-dev\n core templates vars server-php",
- "cmd.vm.templates.vars.required": "Required Variables (no default):",
- "cmd.vm.templates.vars.optional": "Optional Variables (with defaults):",
- "cmd.vm.templates.vars.none": "No variables in this template.",
- "cmd.vm.label.image": "Image:",
- "cmd.vm.label.name": "Name:",
- "cmd.vm.label.hypervisor": "Hypervisor:",
- "cmd.vm.label.started": "Started:",
- "cmd.vm.label.pid": "PID:",
- "cmd.vm.label.container_stopped": "Container stopped:",
- "cmd.vm.label.template": "Template:",
- "cmd.vm.label.building": "Building:",
- "cmd.vm.hint.view_logs": "Use 'core vm logs {{.ID}}' to view output",
- "cmd.vm.hint.stop": "Use 'core vm stop {{.ID}}' to stop",
- "cmd.vm.error.init_manager": "failed to initialize container manager",
- "cmd.vm.error.run_container": "failed to run container",
- "cmd.vm.error.list_containers": "failed to list containers",
- "cmd.vm.error.stop_container": "failed to stop container",
- "cmd.vm.error.get_logs": "failed to get logs",
- "cmd.vm.error.id_required": "container ID is required",
- "cmd.vm.error.id_and_cmd_required": "container ID and command are required",
- "cmd.vm.error.no_match": "no container found matching: {{.ID}}",
- "cmd.vm.error.multiple_match": "multiple containers match '{{.ID}}', be more specific",
- "cmd.vm.error.template_required": "template name is required",
- "cmd.vm.error.apply_template": "failed to apply template",
- "cmd.vm.error.create_temp": "failed to create temp directory",
- "cmd.vm.error.write_template": "failed to write template",
- "cmd.vm.error.build_image": "failed to build image",
- "cmd.vm.error.no_image_found": "no image found after build",
- "cmd.vm.error.linuxkit_not_found": "linuxkit not found. Install with: brew install linuxkit (macOS) or see https://github.com/linuxkit/linuxkit",
- "cmd.docs.short": "Documentation management",
- "cmd.docs.long": "Manage documentation across all repos.\nScan for docs, check coverage, and sync to core-php/docs/packages/.",
- "cmd.docs.list.short": "List documentation across repos",
- "cmd.docs.list.long": "List documentation files for all repos in the workspace.\n\nShows README.md, CLAUDE.md, CHANGELOG.md, and docs/ directory status\nfor each repository.",
- "cmd.docs.list.flag.registry": "Path to repos.yaml (auto-detected if not specified)",
- "cmd.docs.list.header.repo": "Repo",
- "cmd.docs.list.header.readme": "README",
- "cmd.docs.list.header.claude": "CLAUDE",
- "cmd.docs.list.header.changelog": "CHANGELOG",
- "cmd.docs.list.header.docs": "docs/",
- "cmd.docs.list.files_count": "{{.Count}} files",
- "cmd.docs.list.coverage_label": "Coverage",
- "cmd.docs.list.coverage_summary": "{{.WithDocs}} with docs, {{.WithoutDocs}} without",
- "cmd.docs.sync.short": "Sync documentation to core-php/docs/packages/",
- "cmd.docs.sync.long": "Sync documentation from all repos to a central location.\n\nCopies docs/ directories from each package to core-php/docs/packages/\nfor unified documentation builds.",
- "cmd.docs.sync.flag.registry": "Path to repos.yaml (auto-detected if not specified)",
- "cmd.docs.sync.flag.dry_run": "Show what would be synced without copying",
- "cmd.docs.sync.flag.output": "Output directory (default: core-php/docs/packages)",
- "cmd.docs.sync.no_docs_found": "No documentation found in any repos.",
- "cmd.docs.sync.found_label": "Found",
- "cmd.docs.sync.repos_with_docs": "{{.Count}} repo(s) with docs/ directories",
- "cmd.docs.sync.files_count": "({{.Count}} files)",
- "cmd.docs.sync.total_label": "Total:",
- "cmd.docs.sync.total_summary": "{{.Files}} files from {{.Repos}} repos → {{.Output}}",
- "cmd.docs.sync.dry_run_notice": "Dry run - no files copied",
- "cmd.docs.sync.confirm": "Sync?",
- "cmd.docs.sync.done_label": "Done:",
- "cmd.docs.sync.synced_packages": "Synced {{.Count}} packages",
- "cmd.docs.error.load_registry": "failed to load registry",
- "cmd.docs.error.scan_directory": "failed to scan directory",
- "cmd.pkg.short": "Package management for core-* repos",
- "cmd.pkg.long": "Manage host-uk/core-* packages and repositories.\n\nCommands:\n search Search GitHub for packages\n install Clone a package from GitHub\n list List installed packages\n update Update installed packages\n outdated Check for outdated packages",
- "cmd.pkg.no_description": "(no description)",
- "cmd.pkg.search.short": "Search GitHub for packages",
- "cmd.pkg.search.long": "Searches GitHub for repositories matching a pattern.\nUses gh CLI for authenticated search. Results are cached for 1 hour.\n\nExamples:\n core pkg search # List all host-uk repos\n core pkg search --pattern 'core-*' # Search for core-* repos\n core pkg search --org mycompany # Search different org\n core pkg search --refresh # Bypass cache",
- "cmd.pkg.search.flag.org": "GitHub organization (default: host-uk)",
- "cmd.pkg.search.flag.pattern": "Repo name pattern (* for wildcard)",
- "cmd.pkg.search.flag.type": "Filter by type in name (mod, services, plug, website)",
- "cmd.pkg.search.flag.limit": "Max results (default 50)",
- "cmd.pkg.search.flag.refresh": "Bypass cache and fetch fresh data",
- "cmd.pkg.search.cache_label": "Cache:",
- "cmd.pkg.search.note_label": "Note:",
- "cmd.pkg.search.fetching_label": "Fetching:",
- "cmd.pkg.search.gh_token_warning": "GH_TOKEN env var is set - this may cause auth issues",
- "cmd.pkg.search.gh_token_unset": "Unset it with: unset GH_TOKEN",
- "cmd.pkg.search.no_repos_found": "No repositories found matching pattern.",
- "cmd.pkg.search.found_repos": "Found {{.Count}} repositories:",
- "cmd.pkg.search.private_label": "[private]",
- "cmd.pkg.search.install_with": "Install with:",
- "cmd.pkg.install.short": "Clone a package from GitHub",
- "cmd.pkg.install.long": "Clones a repository from GitHub.\n\nExamples:\n core pkg install host-uk/core-php\n core pkg install host-uk/core-tenant --dir ./packages\n core pkg install host-uk/core-admin --add",
- "cmd.pkg.install.flag.dir": "Target directory (default: ./packages or current dir)",
- "cmd.pkg.install.flag.add": "Add to repos.yaml registry",
- "cmd.pkg.install.skip_label": "Skip:",
- "cmd.pkg.install.already_exists": "{{.Name}} already exists at {{.Path}}",
- "cmd.pkg.install.installing_label": "Installing:",
- "cmd.pkg.install.target_label": "Target:",
- "cmd.pkg.install.cloning": "Cloning",
- "cmd.pkg.install.add_to_registry": "add to registry",
- "cmd.pkg.install.added_to_registry": "added to repos.yaml",
- "cmd.pkg.install.done_label": "Done:",
- "cmd.pkg.install.installed": "Installed {{.Name}}",
- "cmd.pkg.list.short": "List installed packages",
- "cmd.pkg.list.long": "Lists all packages in the current workspace.\n\nReads from repos.yaml or scans for git repositories.\n\nExamples:\n core pkg list",
- "cmd.pkg.list.title": "Installed Packages",
- "cmd.pkg.list.no_packages": "No packages in registry.",
- "cmd.pkg.list.total_label": "Total:",
- "cmd.pkg.list.summary": "{{.Installed}} installed, {{.Missing}} missing",
- "cmd.pkg.list.install_missing": "Install missing:",
- "cmd.pkg.update.short": "Update installed packages",
- "cmd.pkg.update.long": "Pulls latest changes for installed packages.\n\nExamples:\n core pkg update core-php # Update specific package\n core pkg update --all # Update all packages",
- "cmd.pkg.update.flag.all": "Update all packages",
- "cmd.pkg.update.update_label": "Update:",
- "cmd.pkg.update.updating": "Updating {{.Count}} package(s)",
- "cmd.pkg.update.not_installed": "not installed",
- "cmd.pkg.update.up_to_date": "up to date",
- "cmd.pkg.update.done_label": "Done:",
- "cmd.pkg.update.summary": "{{.Updated}} updated, {{.Skipped}} skipped, {{.Failed}} failed",
- "cmd.pkg.outdated.short": "Check for outdated packages",
- "cmd.pkg.outdated.long": "Checks which packages have unpulled commits.\n\nExamples:\n core pkg outdated",
- "cmd.pkg.outdated.outdated_label": "Outdated:",
- "cmd.pkg.outdated.checking": "Checking for updates...",
- "cmd.pkg.outdated.commits_behind": "{{.Count}} commits behind",
- "cmd.pkg.outdated.done_label": "Done:",
- "cmd.pkg.outdated.all_up_to_date": "All packages up to date",
- "cmd.pkg.outdated.summary_label": "Summary:",
- "cmd.pkg.outdated.summary": "{{.Outdated}} outdated, {{.UpToDate}} up to date",
- "cmd.pkg.outdated.update_with": "Update with:",
- "cmd.pkg.error.gh_not_authenticated": "gh CLI not authenticated. Run: gh auth login",
- "cmd.pkg.error.auth_failed": "authentication failed - try: unset GH_TOKEN && gh auth login",
- "cmd.pkg.error.search_failed": "search failed: %s",
- "cmd.pkg.error.parse_results": "failed to parse results: %w",
- "cmd.pkg.error.repo_required": "repository is required (e.g., core pkg install host-uk/core-php)",
- "cmd.pkg.error.invalid_repo_format": "invalid repo format: use org/repo (e.g., host-uk/core-php)",
- "cmd.pkg.error.create_directory": "failed to create directory: %w",
- "cmd.pkg.error.no_repos_yaml": "no repos.yaml found",
- "cmd.pkg.error.no_repos_yaml_workspace": "no repos.yaml found - run from workspace directory",
- "cmd.pkg.error.load_registry": "failed to load registry: %w",
- "cmd.pkg.error.specify_package": "specify package name or use --all",
- "cmd.ci.short": "Publish releases (dry-run by default)",
- "cmd.ci.long": "Publishes pre-built artifacts from dist/ to configured targets.\nRun 'core build' first to create artifacts.\n\nSAFE BY DEFAULT: Runs in dry-run mode unless --we-are-go-for-launch is specified.\n\nConfiguration: .core/release.yaml",
- "cmd.ci.init.short": "Initialize release configuration",
- "cmd.ci.init.long": "Creates a .core/release.yaml configuration file interactively.",
- "cmd.ci.init.config_exists": "Configuration already exists at",
- "cmd.ci.init.overwrite_prompt": "Overwrite? [y/N]: ",
- "cmd.ci.init.creating": "Creating release configuration",
- "cmd.ci.init.project_name": "Project name",
- "cmd.ci.init.github_repo": "GitHub repository (owner/repo):",
- "cmd.ci.init.config_written": "Configuration written to",
- "cmd.ci.changelog.short": "Generate changelog",
- "cmd.ci.changelog.long": "Generates a changelog from conventional commits.",
- "cmd.ci.changelog.flag.from": "Starting ref (default: previous tag)",
- "cmd.ci.changelog.flag.to": "Ending ref (default: HEAD)",
- "cmd.ci.version.short": "Show or set version",
- "cmd.ci.version.long": "Shows the determined version or validates a version string.",
- "cmd.ci.release.short": "Create a release",
- "cmd.ci.flag.go_for_launch": "Actually publish (default is dry-run for safety)",
- "cmd.ci.flag.version": "Version to release (e.g., v1.2.3)",
- "cmd.ci.flag.draft": "Create release as a draft",
- "cmd.ci.flag.prerelease": "Mark release as a prerelease",
- "cmd.ci.publishing": "Publishing release",
- "cmd.ci.dry_run_hint": "(dry-run) use --we-are-go-for-launch to publish",
- "cmd.ci.go_for_launch": "GO FOR LAUNCH",
- "cmd.ci.publish_completed": "Publish completed!",
- "cmd.ci.label.ci": "CI:",
- "cmd.ci.label.init": "Init:",
- "cmd.ci.label.note": "Note:",
- "cmd.ci.label.error": "Error:",
- "cmd.ci.label.success": "Success:",
- "cmd.ci.label.version": "Version:",
- "cmd.ci.label.artifacts": "Artifacts:",
- "cmd.ci.label.published": "Published:",
- "cmd.ci.error.working_dir": "failed to get working directory",
- "cmd.ci.error.load_config": "failed to load config",
- "cmd.ci.error.write_config": "failed to write config",
- "cmd.ci.error.no_publishers": "no publishers configured in .core/release.yaml",
- "cmd.ci.error.generate_changelog": "failed to generate changelog",
- "cmd.ci.error.determine_version": "failed to determine version",
- "cmd.sdk.short": "SDK validation and API compatibility tools",
- "cmd.sdk.long": "Tools for validating OpenAPI specs and checking API compatibility.\nTo generate SDKs, use: core build sdk\n\nCommands:\n diff Check for breaking API changes\n validate Validate OpenAPI spec syntax",
- "cmd.sdk.diff.short": "Check for breaking API changes",
- "cmd.sdk.diff.long": "Check for breaking API changes between spec versions.\n\nCompares a base spec (version tag or file) against the current spec\nand reports any breaking changes that would affect API consumers.",
- "cmd.sdk.diff.flag.base": "Base spec (version tag or file)",
- "cmd.sdk.diff.flag.spec": "Current spec file",
- "cmd.sdk.diff.label": "SDK Diff:",
- "cmd.sdk.diff.checking": "Checking for breaking changes",
- "cmd.sdk.diff.base_label": "Base:",
- "cmd.sdk.diff.current_label": "Current:",
- "cmd.sdk.diff.breaking": "Breaking:",
- "cmd.sdk.diff.error.base_required": "--base is required (version tag or file path)",
- "cmd.sdk.validate.short": "Validate OpenAPI spec",
- "cmd.sdk.validate.long": "Validate OpenAPI spec syntax.\n\nChecks that the OpenAPI specification file is valid and well-formed.",
- "cmd.sdk.validate.flag.spec": "Path to OpenAPI spec file",
- "cmd.sdk.validate.validating": "Validating OpenAPI spec",
- "cmd.sdk.validate.spec_label": "Spec:",
- "cmd.sdk.validate.valid": "Spec is valid",
- "cmd.sdk.label.sdk": "SDK:",
- "cmd.sdk.label.ok": "OK:",
- "cmd.sdk.label.error": "Error:",
- "cmd.sdk.error.working_dir": "failed to get working directory",
- "cmd.test.short": "Run tests with coverage",
- "cmd.test.long": "Runs Go tests with coverage reporting.\n\nSets MACOSX_DEPLOYMENT_TARGET=26.0 to suppress linker warnings on macOS.\n\nExamples:\n core test # Run all tests with coverage summary\n core test --verbose # Show test output as it runs\n core test --coverage # Show detailed per-package coverage\n core test --pkg ./pkg/... # Test specific packages\n core test --run TestName # Run specific test by name\n core test --short # Skip long-running tests\n core test --race # Enable race detector\n core test --json # Output JSON for CI/agents",
- "cmd.test.running": "Running tests",
- "cmd.test.all_passed": "All tests passed",
- "cmd.test.tests_failed": "Tests failed",
- "cmd.test.passed": "{{.Count}} passed",
- "cmd.test.failed": "{{.Count}} failed",
- "cmd.test.skipped": "{{.Count}} skipped",
- "cmd.test.failed_packages": "Failed packages:",
- "cmd.test.coverage_by_package": "Coverage by package:",
- "cmd.test.flag.verbose": "Show test output as it runs (-v)",
- "cmd.test.flag.coverage": "Show detailed per-package coverage",
- "cmd.test.flag.short": "Skip long-running tests (-short)",
- "cmd.test.flag.pkg": "Package pattern to test (default: ./...)",
- "cmd.test.flag.run": "Run only tests matching this regex (-run)",
- "cmd.test.flag.race": "Enable race detector (-race)",
- "cmd.test.flag.json": "Output JSON for CI/agents",
- "cmd.test.label.test": "Test:",
- "cmd.test.label.package": "Package:",
- "cmd.test.label.filter": "Filter:",
- "cmd.test.label.coverage": "Coverage:",
- "cmd.test.label.average": "Average",
- "cmd.test.error.no_go_mod": "no go.mod found - run from a Go project directory",
- "cmd.test.error.tests_failed": "tests failed",
- "error.not_found": "Not found: {{.Item}}",
- "error.invalid": "Invalid: {{.Item}}",
- "error.permission": "Permission denied: {{.Item}}",
- "error.timeout": "Operation timed out",
- "error.network": "Network error: {{.Message}}",
- "error.gh_not_found": "'gh' CLI not found. Install from https://cli.github.com/",
- "error.registry_not_found": "No repos.yaml found",
- "error.repo_not_found": "Repository '{{.Name}}' not found",
- "label.status": "Status",
- "label.branch": "Branch",
- "label.commit": "Commit",
- "label.message": "Message",
- "label.author": "Author",
- "label.date": "Date",
- "label.duration": "Duration",
- "label.coverage": "Coverage",
- "label.package": "Package",
- "label.registry": "Registry",
- "label.scanning": "Scanning",
- "label.total": "Total",
- "lang.en": "English",
- "lang.de": "German",
- "lang.es": "Spanish",
- "lang.fr": "French",
- "lang.zh": "Chinese"
+ "gram": {
+ "verb": {
+ "analyse": { "base": "analyze", "past": "analyzed", "gerund": "analyzing" },
+ "organise": { "base": "organize", "past": "organized", "gerund": "organizing" },
+ "recognise": { "base": "recognize", "past": "recognized", "gerund": "recognizing" },
+ "realise": { "base": "realize", "past": "realized", "gerund": "realizing" }
+ }
+ }
}