Skip to content

list ​

List every form gform can resolve on the search path — cwd ./forms/ plus the global library.

basic usage ​

bash
gform list
gform ls                              # short alias
gform list --json
gform list -j

Each row shows: name, step count, whether pools exist, and history counts (ok / fail / skip from $GFORM_HOME/history.jsonl).

search path ​

Forms are discovered from directories that exist:

  1. --forms-dir <dir> (per-command override)
  2. GFORM_FORMS_DIR env
  3. ./forms/ (cwd) — skipped if missing
  4. $GFORM_HOME/forms/ (library)

Same order as gform run name lookup. See portable.md.

bash
gform list --forms-dir ./forms

live policy flags ​

bash
gform list --policy
gform list --policy --json

--policy fetches live inspect flags for each form (slower — one HTTP request per URL). Adds tags like ok, login, closed, captcha, file-upload.

Use this for a quick health dashboard before a batch run. For one form, prefer inspect.md.

list limits ​

Human output respects global list caps:

bash
gform list -T 5                       # show top 5 rows
gform list -F                         # show all (ignore --top)
gform list --full

Default is top 10 unless -F / --full. JSON output always returns the full set.

empty library ​

bash
gform list
# → No forms found on search path. Try: gform add ./forms/<form>.yaml

Scaffold with init.md or install with add.md.

gotchas ​

  • gform list lists forms, not past runs — use gform run list for artifacts.
  • History counts are local ledger stats, not Google's response limits.
  • --policy can fail per-row (inspect-failed) if the URL is unreachable — check --json for details.