{"slug": "show-hn-task-and-test-management-as-yaml-in-your-git-repo-vs-code", "title": "Show HN: Task and test management as YAML in your Git repo (VS Code)", "summary": "Gitoza Lite, a VS Code extension that manages tickets, releases, wiki pages, and test cases as plain YAML files under a repository's `.gitoza-lite/` directory, was released on the VS Code Marketplace and requires VS Code 1.85 or later. The extension stores every entity as YAML front matter plus a Markdown body so users can `git add`, `git diff`, and merge changes in pull requests, and it supports drafting tickets by asking Cursor, Copilot, or ChatGPT to write a YAML file that is then refined in the extension. Gitoza Lite uses only the `.gitoza-lite/` path and does not read or modify Gitoza Desktop data under `.gitoza/`, with no automatic migration between the two.", "body_md": "Manage **tickets**, **releases**, **wiki pages**, and **test cases** without leaving your repo. Everything is plain YAML under `.gitoza-lite/` — browse and edit it from a structured UI in [VS Code](https://code.visualstudio.com/), then share work with your team through **git and branches** like any other code.\n\nOpen a project, click through tickets, edit and save, search, and plan by release:\n\nAsk Cursor, Copilot, or ChatGPT to draft a ticket the same way you’d ask for a code change. The assistant writes a YAML file in the repo; open it in Gitoza Lite to refine status, release, and details — then commit and review in a PR. No built-in AI required.\n\n- **Draft with AI** — generate a`.yaml` file, then open and refine it in Gitoza Lite before you commit.\n- **Docs and tasks as code** — every entity is a file you can`git add` ,`git diff` , and merge in pull requests.\n- **Same file shape everywhere** — YAML front matter + Markdown body; filename stem is the entity id.\n\nBrowse the Test Repository, create a case, and run a manual Pass / Fail / Skip flow:\n\nThis repository ships both **extension source** and a seeded **handbook** under `.gitoza-lite/` (wiki, tickets, test cases, and a smoke run). The handbook is **repo demo data only** — it is excluded from the published `.vsix`.\n\n1. Clone this repository and open the folder in VS Code.\n2. Install **Gitoza Lite** from the Marketplace, or press**F5** (*Run Extension* ) from a development checkout — the host opens`.dev/handbook-workspace` (symlinked handbook) so it does not jump back to the parent window.\n3. Run **Gitoza Lite: Open Tickets, Wiki & Tests** (or click the Gitoza Lite Activity Bar icon).\n4. Start here:\n  - **Wiki** →`02-getting-started` →*Welcome — open this handbook* (`W-LITE01` )\n  - **Tickets** → project**Gitoza_Lite** →*Welcome — start here* (`LITE-WELCOM` )\n  - **Test Repository** → project**gitoza.lite.handbook**\n  - **Test Run** →**R-SMOKE1** (Handbook smoke)\n\n**Requirements:** VS Code 1.85+ and an open workspace folder.\n\n1. Open a repository in VS Code.\n2. The **Gitoza Lite** tab opens in the editor area when the extension activates (when a`.gitoza-lite/` root exists, or after you run the open command).\n3. If the tab was closed, click the **Gitoza Lite** icon in the Activity Bar, or run**Gitoza Lite: Open Tickets, Wiki & Tests** from the Command Palette.\n4. Use the left icon rail to switch between **Test Repository** ,**Test Run** ,**Tickets** ,**Releases** , and**Wiki** .\n5. Create a first project (tests or tickets) or wiki page from the empty state to initialize the matching folder under `.gitoza-lite/` .\n\n**Workspace paths:** This extension uses **`.gitoza-lite/`** only. It does not read or modify Gitoza Desktop paths under **`.gitoza/`**. Copy or move files manually if you already have Desktop data — there is no automatic migration.\n\n| Module | Path | \n|---|---|\n| Test cases | `.gitoza-lite/test/cases/` | \n| Test runs | `.gitoza-lite/test/run/` | \n| Tickets | `.gitoza-lite/tasks/tickets/{project}/` | \n| Releases | `.gitoza-lite/tasks/tickets/{project}/releases/` | \n| Wiki | `.gitoza-lite/wiki/` | \n\n- **Tickets** — two-column project tree + detail; create tickets with auto ids (`PREFIX-XXXXXX` ); edit metadata + Markdown\n- **Releases** — project-scoped release YAML; link from ticket`release` field\n- **Wiki** — two-column folder/page tree + detail; immutable`W-…` page ids; title/tags/status + Markdown\n- **Test Repository** — three-column UI for projects, suites, and cases\n- **Test Run** — YAML-backed manual runs with Pass / Fail / Skip\n- **Local-first** — reads and writes YAML on disk; no SQLite or cloud dependency\n- **Manual save** — Edit, then Save (no auto-save)\n\n```\n---\ntitle: Fix login redirect\ntype: bug\nstatus: open\npriority: high\ntags: [auth]\n---\n\n## Description\n…\n```\n\nPath: `.gitoza-lite/tasks/tickets/{project}/{PREFIX}-{id}.yaml`. Project meta: `.project.yaml` with `ticket_prefix`.\n\n```\n---\nrelease_id: demo/1.1.0\nname: 1.1.0\nstatus: open\n---\n```\n\nPath: `.gitoza-lite/tasks/tickets/{project}/releases/{stem}.yaml`.\n\n```\n---\ntitle: Architecture overview\ntags: [handbook]\nstatus: published\n---\n\nMarkdown body…\n```\n\nPath: `.gitoza-lite/wiki/{folders…}/W-XXXXXX.yaml`.\n\nEach test case is a YAML file with front matter and a Markdown body. The extension **writes only editable fields** on create/save (`title`, `priority`, `tags`, `status`, `requirement_id`, `assigned_to`, `automated`, `params`, and the Markdown body).\n\n```\n---\ntitle: Login with valid credentials\npriority: high\ntags: [smoke, auth]\nstatus: active\n---\n\n## Steps\n1. Open the login page\n2. Enter valid credentials\n\n## Expected result\nUser is redirected to the dashboard.\n---\ntitle: Sprint 42 smoke\n---\ncases:\n  - path: .gitoza-lite/test/cases/my_project/suite/login.yaml\n    result: pending\n  - path: .gitoza-lite/test/cases/my_project/suite/logout.yaml\n    result: passed\n```\n\nSupported `result` values: `pending`, `passed`, `failed`, `skipped`.\n\nBuilt by [Gitoza](https://gitoza.com). Tickets, wiki, releases, and tests stay the same YAML shape whether you edit them in VS Code or elsewhere.\n\n**Gitoza Lite** is the in-editor workflow for developers. When the whole team needs to work on that same project data — including people who don’t live in git day to day — keep assets local and use **[Gitoza Desktop](https://gitoza.com)** for shared task views, sync, and progress tracking.\n\nSee [CONTRIBUTING.md](https://github.com/gitoza-io/gitoza-lite/blob/main/CONTRIBUTING.md) for build, test, and packaging instructions.\n\nMIT — see [LICENSE](https://github.com/gitoza-io/gitoza-lite/blob/main/LICENSE).", "url": "https://wpnews.pro/news/show-hn-task-and-test-management-as-yaml-in-your-git-repo-vs-code", "canonical_source": "https://github.com/gitoza-io/gitoza-lite", "published_at": "2026-09-22 17:27:51+00:00", "updated_at": "2026-09-22 17:55:22.255960+00:00", "lang": "en", "topics": ["developer-tools", "ai-tools"], "entities": ["Gitoza Lite", "VS Code", "Cursor", "GitHub Copilot", "ChatGPT", "Gitoza Desktop"], "alternates": {"html": "https://wpnews.pro/news/show-hn-task-and-test-management-as-yaml-in-your-git-repo-vs-code", "markdown": "https://wpnews.pro/news/show-hn-task-and-test-management-as-yaml-in-your-git-repo-vs-code.md", "text": "https://wpnews.pro/news/show-hn-task-and-test-management-as-yaml-in-your-git-repo-vs-code.txt", "jsonld": "https://wpnews.pro/news/show-hn-task-and-test-management-as-yaml-in-your-git-repo-vs-code.jsonld"}}