-
Notifications
You must be signed in to change notification settings - Fork 1
docs: add graze-cli/GRAZE.md instruction file (fixes #20) #39
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -3,6 +3,7 @@ | |
| ## What is graze and why use it? | ||
|
|
||
| Graze-CLI is Open Paws' fork of [opencode](https://github.com/anomalyco/opencode), an agentic coding CLI for advocacy developers. It supports automatic failover across 9 LLM providers (7 with free tiers: Gemini, Groq, Cerebras, SambaNova, DeepInfra, Ollama, Mistral/CodeStral). Key differences from upstream: | ||
|
|
||
| - Advocacy-aware system prompts (neutral mode for external repos, full kernel for Open Paws) | ||
| - Pre-configured NAV/desloppify hooks | ||
| - India bootcamp / global south optimized (free-tier providers, Colab secrets) | ||
|
|
@@ -14,22 +15,26 @@ Copy this `graze-cli/` directory to your project root. Graze auto-detects it. | |
| **NOT** `npm i -g opencode` (upstream, lacks advocacy rules). | ||
|
|
||
| ### Global install (recommended for Guild devs) | ||
|
|
||
| ```bash | ||
| git clone https://github.com/Open-Paws/graze-cli.git | ||
| cd graze-cli | ||
| npm install | ||
| npm run build | ||
| npm link # or `bun link` | ||
| ``` | ||
|
|
||
| Test: `graze --version` | ||
|
|
||
| ### Colab / no-install (India bootcamp) | ||
|
|
||
| ```bash | ||
| git clone https://github.com/Open-Paws/graze-cli.git | ||
| cd graze-cli | ||
| npm install | ||
| npx graze --version # or add to $PATH | ||
| ``` | ||
|
|
||
| Use Colab secrets for API keys: `GOOGLE_GENERATIVE_AI_API_KEY`, `GROQ_API_KEY`, etc. | ||
|
|
||
| **npm package pending** (@open-paws/graze publishing tracked [#74](https://github.com/Open-Paws/graze-cli/issues/74)). | ||
|
|
@@ -47,8 +52,8 @@ Use Colab secrets for API keys: `GOOGLE_GENERATIVE_AI_API_KEY`, `GROQ_API_KEY`, | |
|
|
||
| ## Advocacy Workflow Rules | ||
|
|
||
| 1. **Pre-commit**: Always `desloppify scan .` + `semgrep --config=p/open-paws/semgrep-rules-no-animal-violence` | ||
| 2. **Economic test**: Before implementing, ask: \"Does this make exploitation less profitable or alternatives more competitive?\" | ||
| 1. **Pre-commit**: Always `desloppify scan .` + `semgrep --config semgrep-no-animal-violence.yaml` | ||
| 2. **Economic test**: Before implementing, ask: "Does this make exploitation less profitable or alternatives more competitive?" | ||
| 3. **Quest submission** (Guild): `platform_submit_quest_completion` when done | ||
| 4. **Two-state prompts**: Advocacy kernel auto-injects in Open Paws repos; neutral elsewhere | ||
| 5. **Token discipline**: Large context (strategy docs) — `graze run --max-tokens 32k` | ||
|
|
@@ -61,8 +66,9 @@ Use Colab secrets for API keys: `GOOGLE_GENERATIVE_AI_API_KEY`, `GROQ_API_KEY`, | |
| - **India networks**: Gemini blocked? Fallback: `graze herd list | grep free`. | ||
|
|
||
| ## Links | ||
|
|
||
| - [Graze-CLI Repo](https://github.com/Open-Paws/graze-cli) | ||
| - [India Bootcamp Module 1](https://github.com/Open-Paws/c4c-bootcamp/issues/10) | ||
| - [Desloppify OP Fork](https://github.com/Open-Paws/desloppify) | ||
|
|
||
|
Comment on lines
+68
to
+73
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧩 Analysis chain🏁 Script executed: #!/bin/bash
set -euo pipefail
echo "Searching README/index files for GRAZE.md cross-reference..."
fd -i 'readme\.md$|index\.md$' --exec rg -n -i 'graze-cli/GRAZE\.md|GRAZE\.md'Repository: Open-Paws/structured-coding-with-ai Length of output: 140 🏁 Script executed: #!/bin/bash
set -euo pipefail
echo "=== Step 1: Find all README/index files in repository ==="
fd -i 'readme|index' -e md
echo ""
echo "=== Step 2: Specifically check graze-cli directory ==="
ls -la graze-cli/ 2>/dev/null | grep -i readme || echo "No README in graze-cli/"
echo ""
echo "=== Step 3: Check repository root for README ==="
ls -la | grep -i readme || echo "No README in root"Repository: Open-Paws/structured-coding-with-ai Length of output: 582 🏁 Script executed: #!/bin/bash
set -euo pipefail
echo "=== Step 4: Verify GRAZE.md content for speciesist language ==="
# First, try to install semgrep and run the check
pip install semgrep -q 2>/dev/null || echo "Semgrep installation may have issues"
# Attempt the semgrep check on GRAZE.md
if command -v semgrep &> /dev/null; then
echo "Running semgrep check on GRAZE.md..."
semgrep --config semgrep-no-animal-violence.yaml graze-cli/GRAZE.md 2>&1 || true
else
echo "Semgrep not available; checking content manually for obvious issues..."
cat -n graze-cli/GRAZE.md | head -70 | tail -15
fiRepository: Open-Paws/structured-coding-with-ai Length of output: 342 🏁 Script executed: #!/bin/bash
set -euo pipefail
echo "=== Step 5: Check root README.md for graze-cli mention ==="
rg -n 'graze' README.md -i
echo ""
echo "=== Step 6: Read GRAZE.md around lines 63-67 for context ==="
cat -n graze-cli/GRAZE.md | sed -n '55,75p'Repository: Open-Paws/structured-coding-with-ai Length of output: 1165 Add GRAZE.md to README or establish graze-cli discovery path. Root README mentions the graze-cli repo (lines 189, 195, 254) but doesn't link to or reference the GRAZE.md file itself. graze-cli/ has no README. The file is currently unreachable from the discovery layer — either add an entry to root README linking to 🧰 Tools🪛 markdownlint-cli2 (0.22.1)[warning] 63-63: Headings should be surrounded by blank lines (MD022, blanks-around-headings) 🤖 Prompt for AI Agents |
||
| **Last updated**: 2026-04-26 | ||
| **Last updated**: 2026-04-26 | ||
Uh oh!
There was an error while loading. Please reload this page.