Repository navigation
Conversation
Module Scorecard Check
|
| Presentation & Onboarding | Agent Integration | Credential Hygiene | Restricted-Environment Readiness | Engineering Quality | Overall |
|---|---|---|---|---|---|
| 10 / 17 | 13 / 25 | 20 / 20 | 7 / 20 | 8 / 10 | 63 / 100 |
Drilldown
Presentation & Onboarding — 10 / 17
| Criterion | Max | Score | Notes |
|---|---|---|---|
| Configuration-mode examples | 12 | 10 | Five distinct examples cover default install, standalone with launcher app (workdir + coder_app), MCP/rules, pinned version, and downstream coder_script serialization. The install_auggie = false (BYO binary) mode is described in the variable but has no dedicated README example. |
| Visual preview | 5 | 0 | No image, GIF, or video embedded in the README. The frontmatter icon field references an SVG but that is not a visual preview of the module in action. |
Agent Integration — 13 / 25
| Criterion | Max | Score | Notes |
|---|---|---|---|
| AI governance | 10 | 0 | No mention of Coder AI Gateway or Agent Firewall anywhere in the README. No documentation of how Coder governs auth, routing, or policy enforcement for Auggie. |
| Dashboard entry point | 5 | 5 | The "Standalone mode with a launcher app" example includes a fully specified coder_app resource with slug, display_name, icon, open_in = "slim-window", and a launch command. |
| Session continuity | 5 | 3 | The launcher example uses exec auggie --continue (native resume flag), and the v1 WARNING notes that continue_previous_conversation was removed "in favor of CLI flags in your launcher." However, there is no dedicated section explaining session continuity or how to resume across relaunches. |
| Managed configuration | 5 | 5 | README documents mcp/mcp_files (written to ~/.augment/settings.json), rules (written to ~/.augment/rules/coder-module.md), and auggie_model (sets model key in settings). All with examples and links to Auggie docs. |
Credential Hygiene — 20 / 20
| Criterion | Max | Score | Notes |
|---|---|---|---|
| Secrets marked sensitive | 16 | 16 | augment_session_token is declared sensitive = true in main.tf. README examples reference var.augment_session_token (a variable), never an inline literal or placeholder key. The coder_env resource passes the value without embedding it in the install script. |
| Non-hardcoded auth path | 4 | 4 | The README's Authentication section documents the session-token path: auggie token print → variable → coder_env → AUGMENT_SESSION_AUTH. No raw key is pasted into a template. The alternative (auggie login interactively) is also noted. |
Restricted-Environment Readiness — 7 / 20
| Criterion | Max | Score | Notes |
|---|---|---|---|
| Mirrorable artifact source | 5 | 0 | Auggie is installed via npm install -g @augmentcode/auggie. No module input variable overrides the npm registry URL or any download source. auggie_version pins the version but does not change the source URL. No variable can be named that replaces the download URL. |
| Bring-your-own binary | 10 | 5 | install_auggie (default true) can be set to false to skip npm install and validate an existing binary on PATH. The script implements this correctly. However, the README has no section or example demonstrating this mode; it is only described in the Terraform variable description. |
| Egress transparency | 3 | 0 | No dedicated README section enumerates external endpoints (npm registry, Augment API). No air-gapped or restricted-network guidance. |
| Runs without sudo | 2 | 2 | The install script uses npm config set prefix "$HOME/.npm-global" and all mkdir/ln/file writes target $HOME paths. No sudo invocation anywhere in the script. |
Engineering Quality — 8 / 10
| Criterion | Max | Score | Notes |
|---|---|---|---|
| Input quality | 6 | 4 | All 12 variables have clear descriptions and sensible defaults. augment_session_token is correctly marked sensitive. However, no validation blocks are present (e.g., workdir could validate absolute-path format; auggie_version could validate semver). |
| Test coverage | 4 | 4 | main.tftest.hcl covers Terraform-level business logic (defaults, workdir trimming, env-var creation, base64 encoding, scripts output ordering). main.test.ts provides 12 end-to-end container tests covering install paths, MCP merge semantics, rules writing, model preservation, JSONC handling, secret non-leakage, and pre/post scripts. |
Overall — 63 / 100
Raw 58 / 92 → round(58 / 92 × 100) = 63
Tip
You can run this locally by telling your agent: "review this module against .github/scorecard/SCORECARD.md".
Scored against SCORECARD.md with solstice-1. Language-model scores are advisory.
|
Automated review requested by @matifali. Please sanity-check before acting on it.
SummaryThe agentapi module is replaced with Correctness
Leftovers
Findingsshould-fix S1 (blocking for me): changes to module-managed MCP servers never apply after the first start. should-fix S2: rules can't be cleared. nit N1: v0 leftovers on persistent homes. nit N2: jq is now required but not documented. nit N3: variable attribute order. nit N4: constraints are inconsistent with the series. nit N5: tests still import from the agentapi module. nit N6: MCP names with newlines break pairing. nit N7: the PR body says the npm install happens "now on every start", but v0 also reinstalled every start. Not a regression; just a wording fix. Tests
CI and reviews
Series consistencyIt follows the same layout as kiro-cli and claude-code (coder-utils, |
|
Re S1 (module-managed MCP servers never update after the first start): not changing this here. "Existing name wins" is intentional and matches the rest of the series and
Auggie does the same via a non-interactive Generated with Coder Agents. |
Closes REG-82
Refactor
coder-labs/auggieto install and configure Auggie CLI only, matching the claude-code, codex, copilot, cursor-cli, opencode, and kiro-cli migrations. Changes beyond the AgentAPI removal are limited to what the current Auggie docs require.order,group,install_agentapi,agentapi_version,ai_prompt,report_tasks,cli_app,web_app_display_name,cli_app_display_name,continue_previous_conversation,interaction_mode), thetask_app_idoutput, the start script, and the task-reportingcoderMCP server.folderis renamed toworkdir, optional, and created if missing.npm install -g @augmentcode/auggie(into~/.npm-global, as before), now on every start wheninstall_auggie = true; withfalse,auggiemust be onPATH. Removed theauggie_versionvalidation; it is base64-encoded into the script.mcpandmcp_filesare added to~/.augment/settings.jsonwithauggie mcp add-jsonat install time instead of--mcp-configflags at launch. Existing names are kept with a per-name warning, matching the CLI without--replace.rulesare written to the user rules folder (~/.augment/rules/coder-module.md) instead of a--rulesflag.auggie_modelsets themodelkey in~/.augment/settings.jsoninstead of--model.augment_session_tokenis now sensitive andAUGMENT_SESSION_AUTHis only created when set; it was previously also rendered into the start script.scriptsoutput; README reduced to examples and doc links; rewrite tests. Bump to1.0.0.Important
Model calls and MCP connections were not verified: they need an Augment account, which was not available.
Decision log
npm install -g @augmentcode/auggie, Node 20+~/.npm-globalprefix (keepsauggie upgradewritable); keep thenode/npmcheck and.bashrcsourcingAUGMENT_SESSION_AUTHenv var with theauggie token printJSONcoder_envonly, gated on non-empty, never in scripts or logs~/.augment/settings.jsonmcpServers;auggie mcp add-jsonworks without login, preserves JSONC, and non-interactively exits 3 with "already exists" unless--replaceauggie mcp add-json; existing servers win with a warning; no jq edit of MCP--rulesflag, or auto-loaded~/.augment/rules/*.md(always applied)rulesto~/.augment/rules/coder-module.md;auggie rules listshows it--model//model; settings schema hasmodel, and with it setauggielogsIgnoring --model=<value>when no models are availableauggie_modelby writingmodelwith jq; a JSONC settings file is left unchanged with a warning--allow-indexing)auggie_versionandinteraction_modehad themTesting
terraform test(6 passed),bun test main.test.ts(12 passed, container-based),terraform fmt,terraform validate, prettier, shellcheck on the rendered script (all severities)codercom/enterprise-node:latestvia the module's rendered pre_install and install scripts:CODER_SCRIPT_BIN_DIRsymlink and profile PATH entries createdtheme, usersharedserver wins with a warning);everythingandmcp_filesserver added;auggie mcp listshows all threeauggie rules listshows~/.augment/rules/coder-module.md; themodelkey is picked up (Ignoring --model=test-model because no model options are availablewithout login)AUGMENT_SESSION_AUTH(dummy token gets a 401 from Augment), absent from scripts, logs, and~/.augment; rotated value appliedCODER_SCRIPT_BIN_DIR, downstreamcoder exp syncscript ran after pre_install, install, post_install; seeded settings kept, usersharedserver kept with a warning,everythingandmcp_filesservers added,modelset, rules written,AUGMENT_SESSION_AUTHsetauggie --help,auggie mcp --help, and duplicateauggie mcp add-jsonbehavior (exit 3, existing entry and JSONC kept) on 0.36.0Generated with Coder Agents.