Skip to content

Commit 13d3839

Browse files
Merge pull request #446 from math-inc/codex/public-force-template-cache-20260403
Fix Morph launcher flow and restore top-level Gauss entry
2 parents 58955d4 + 5f95640 commit 13d3839

22 files changed

Lines changed: 491 additions & 180 deletions

.github/morph/opengauss-template.yaml

Lines changed: 85 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name: Open Gauss Batteries Included Devbox
2-
description: Installer-driven Open Gauss template that uses the current checkout when run locally and otherwise clones math-inc/OpenGauss, runs the internal installer, exposes the local guide, and opens a ready Gauss session.
2+
description: Installer-driven Open Gauss template that uses the current checkout when run locally and otherwise clones math-inc/OpenGauss, runs the internal installer, stages optional provider keys, exposes the local guide, and opens a ready Gauss session.
33
steps:
44
- id: bootstrap-installer-runtime
55
title: Prepare Open Gauss Installer Runtime
@@ -63,6 +63,90 @@ steps:
6363
./scripts/install-internal.sh --with-workspace --noninteractive
6464
. "$HOME/.opengauss-template/runtime.env"
6565
"$HOME/.local/bin/gauss-launch-session" --print-summary || true
66+
- id: optional-openrouter
67+
title: Optionally Stage OPENROUTER_API_KEY
68+
type: exportSecret
69+
name: OPENROUTER_API_KEY
70+
optional: true
71+
run: |
72+
set -euo pipefail
73+
. "$HOME/.opengauss-template/runtime.env"
74+
mkdir -p "$GAUSS_HOME"
75+
touch "$GAUSS_HOME/.env"
76+
python3 - <<'PY'
77+
from pathlib import Path
78+
import os
79+
80+
env_path = Path(os.environ["GAUSS_HOME"]) / ".env"
81+
lines = []
82+
if env_path.exists():
83+
lines = [line for line in env_path.read_text().splitlines() if line and not line.startswith("OPENROUTER_API_KEY=")]
84+
value = os.environ.get("OPENROUTER_API_KEY")
85+
if not value:
86+
raise SystemExit(0)
87+
lines.append("OPENROUTER_API_KEY=" + value)
88+
env_path.write_text("\n".join(lines) + "\n")
89+
PY
90+
- id: optional-openai
91+
title: Optionally Stage OPENAI_API_KEY
92+
type: exportSecret
93+
name: OPENAI_API_KEY
94+
optional: true
95+
run: |
96+
set -euo pipefail
97+
. "$HOME/.opengauss-template/runtime.env"
98+
mkdir -p "$GAUSS_HOME"
99+
touch "$GAUSS_HOME/.env"
100+
python3 - <<'PY'
101+
from pathlib import Path
102+
import os
103+
104+
env_path = Path(os.environ["GAUSS_HOME"]) / ".env"
105+
lines = []
106+
if env_path.exists():
107+
lines = [line for line in env_path.read_text().splitlines() if line and not line.startswith("OPENAI_API_KEY=")]
108+
value = os.environ.get("OPENAI_API_KEY")
109+
if not value:
110+
raise SystemExit(0)
111+
lines.append("OPENAI_API_KEY=" + value)
112+
env_path.write_text("\n".join(lines) + "\n")
113+
PY
114+
- id: optional-anthropic
115+
title: Optionally Stage ANTHROPIC_API_KEY
116+
type: exportSecret
117+
name: ANTHROPIC_API_KEY
118+
optional: true
119+
run: |
120+
set -euo pipefail
121+
. "$HOME/.opengauss-template/runtime.env"
122+
mkdir -p "$GAUSS_HOME"
123+
touch "$GAUSS_HOME/.env"
124+
python3 - <<'PY'
125+
from pathlib import Path
126+
import os
127+
128+
env_path = Path(os.environ["GAUSS_HOME"]) / ".env"
129+
lines = []
130+
if env_path.exists():
131+
lines = [line for line in env_path.read_text().splitlines() if line and not line.startswith("ANTHROPIC_API_KEY=")]
132+
value = os.environ.get("ANTHROPIC_API_KEY")
133+
if not value:
134+
raise SystemExit(0)
135+
lines.append("ANTHROPIC_API_KEY=" + value)
136+
env_path.write_text("\n".join(lines) + "\n")
137+
PY
138+
- id: finalize-provider-selection
139+
title: Apply Main Provider Selection
140+
type: command
141+
run: |
142+
set -euo pipefail
143+
. "$HOME/.opengauss-template/runtime.env"
144+
if [ -f "$GAUSS_HOME/.env" ]; then
145+
set -a
146+
. "$GAUSS_HOME/.env"
147+
set +a
148+
fi
149+
"$HOME/.local/bin/gauss-configure-main-provider" auto || true
66150
- id: start-guide-server
67151
title: Start Guide Iframe Server
68152
type: command

README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<p align="center">
2-
<a href="https://morph.new/opengauss">
2+
<a href="https://morph.new/opengauss-0-2-2">
33
<img src="https://img.shields.io/badge/Open%20in-Morph-f23f42?style=for-the-badge" alt="Open in Morph">
44
</a>
55
</p>
@@ -12,8 +12,8 @@ Open Gauss is a project-scoped Lean workflow orchestrator from Math, Inc. It giv
1212
> Start with the [Start Here guide](website/docs/getting-started/start-here.md).
1313
>
1414
> Very short version:
15-
> - Morph: open `morph.new/opengauss`, claim or save the session early if Morph offers it, then use `gauss-open-guide` or type `/start`.
16-
> - Local: run `./scripts/install.sh`, then `gauss-open-guide` or `gauss`, then start with `/start`, `/chat`, or `/project init`.
15+
> - Morph: open `morph.new/opengauss-0-2-2`, claim or save the session early if Morph offers it, then use `gauss-open-guide`, `gauss`, `/chat`, or `/project init`.
16+
> - Local: run `./scripts/install.sh`, then `gauss-open-guide` or `gauss`, then start with `/chat`, `/managed-chat`, or `/project init`.
1717
1818
Open Gauss handles project detection, managed backend setup, workflow spawning, swarm tracking, and recovery. The proving and formalization behavior still comes from `cameronfreer/lean4-skills`; Gauss exposes it through a Gauss-native CLI and project model.
1919

@@ -31,7 +31,7 @@ Each lifted slash command spawns a managed backend child agent in the active pro
3131

3232
## Install
3333

34-
If you want the fastest path, `https://morph.new/opengauss` launches the hosted setup in under 10 seconds. The local installers below are the batteries-included path for your own machine and can take up to 10 minutes.
34+
If you want the fastest pinned release path, `https://morph.new/opengauss-0-2-2` launches the hosted setup in under 10 seconds. The local installers below are the batteries-included path for your own machine and can take up to 10 minutes.
3535

3636
If you are not already comfortable with OpenGauss, read the [Start Here guide](website/docs/getting-started/start-here.md) before picking a workflow.
3737

agent/prompt_builder.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -67,9 +67,9 @@ def _scan_context_content(content: str, filename: str) -> str:
6767
"a general self-summary unless the user explicitly asks. When asked who you "
6868
"are, answer briefly and return to the work. "
6969
"When the user is trying to use Open Gauss itself or seems unsure how to "
70-
"start, give them the lowest-friction path first: point them to /start if "
71-
"they want inline orientation or plain-language help, point them to /chat "
72-
"if they want a managed Claude Code or Codex chat session, and point them to /project "
70+
"start, give them the lowest-friction path first: point them to /chat if "
71+
"they want inline orientation or plain-language help, point them to /managed-chat "
72+
"if they want a managed Claude Code or Codex child session, and point them to /project "
7373
"when they are ready to create or activate a Gauss project. After that, "
7474
"tell them to run /prove, /autoprove, /formalize, or /autoformalize "
7575
"followed by a natural-language instruction, for example /autoprove The "

0 commit comments

Comments
 (0)