garrytan / garrytan/gstack

Feature request: first-class support for a non-git "umbrella" dir over multiple git subprojects

Open
#1,923 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
133k
Forks
19.9k
Avg merge
18h 46m
Merged PRs (30d)
26

Description

## Context

Common monorepo-ish layout: a parent directory that is **not** a git repo, containing N independent git subprojects — e.g.:

```
MyProduct/ # not a git repo
├── backend/ # git repo
├── frontend/ # git repo
└── CLAUDE.md # documents both
```

## What already works well

Running `/gstack-spec`, `/gstack-plan-eng-review`, and `/gstack-plan-design-review` **from the umbrella dir** is great: the agent gets unified cross-project context, which is exactly what you want for a feature that spans backend + frontend. This is the natural place to plan.

## The gap

Project-scoped infra keys on a git remote/slug:
- cross-session decision memory (`~/.gstack/projects//decisions.jsonl`)
- the learnings store

Run from a non-git umbrella there's no remote → it falls back to a local/degraded identity. So the high-value decisions captured during planning (CEO/eng/spec reviews) aren't tied to a stable project identity, and they don't carry over to the per-subproject sessions where implementation and `/ship` actually happen. The plan is made under one identity (umbrella) and built under another (subproject), and decision memory doesn't bridge them.

## Proposed directions

1. Detect child git repos under a non-git parent and allow an explicit umbrella project slug (e.g. a `.gstack` marker file at the umbrella root, or `~/.gstack/config.yaml`) so project-scoped infra works there.
2. Optionally let subprojects "link" to an umbrella project, so decision memory + learnings are shared across the umbrella and its children — planning in the umbrella, building in a child, with continuous memory.

Contributor guide

Open the contributing guide

Research direction

Start with the project-scoped identity used by /gstack-spec, /gstack-plan-eng-review, and /gstack-plan-design-review, then inspect how ~/.gstack/projects//decisions.jsonl is selected from an umbrella directory. Compare the proposed .gstack marker and ~/.gstack/config.yaml approaches, including links from child repositories. Done means planning and per-subproject sessions share stable decision memory and learnings.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
developer-experience, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.