vault backup: 2026-03-03 19:45:16

Affected files:
.github/workflows/ai-pr-review
.gitignore
.kateproject
.obsidian/workspace.json
README.md
This commit is contained in:
Jacob Kraniak 2026-03-03 19:45:16 -05:00
parent de01086eb6
commit 89a48e8db2
5 changed files with 118 additions and 15 deletions

110
.github/workflows/ai-pr-review vendored Normal file
View File

@ -0,0 +1,110 @@
name: Grok AI PR Review
on:
pull_request:
types: [opened, synchronize, reopened]
permissions:
pull-requests: write
contents: read
jobs:
review:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
fetch-depth: 0 # Needed for git diff
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.12'
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install openai requests
- name: Run Grok Review
env:
XAI_API_KEY: ${{ secrets.XAI_API_KEY }}
GROK_MODEL: ${{ vars.GROK_MODEL || 'grok-code-fast-1' }} # fallback to fast coding model
run: |
python - << 'EOF'
import os
import requests
from openai import OpenAI
# Use OpenAI SDK with custom base URL for xAI compatibility
client = OpenAI(
api_key=os.environ["XAI_API_KEY"],
base_url="https://api.x.ai/v1"
)
# Get PR diff via GitHub API (or git diff origin/${{ github.base_ref }}...HEAD)
repo = "${{ github.repository }}"
pr_number = ${{ github.event.pull_request.number }}
token = os.environ.get("GITHUB_TOKEN") # built-in
headers = {
"Accept": "application/vnd.github.v3.diff",
"Authorization": f"token {token}"
}
diff_url = f"https://api.github.com/repos/{repo}/pulls/{pr_number}"
diff_response = requests.get(diff_url, headers=headers)
diff_text = diff_response.text
if not diff_text.strip():
print("No diff found or empty PR.")
exit(0)
# Truncate if too long (Grok context is large, but save tokens)
max_chars = 30000
if len(diff_text) > max_chars:
diff_text = diff_text[:max_chars] + "\n\n[Diff truncated; full context may be larger]"
# Strong, repo-specific prompt (tune this!)
prompt = f"""
You are a senior security & knowledge-base curator reviewing changes to 'The Book of Secret Knowledge' — a curated list of cybersecurity, pentesting, CLI/GUI tools, shell tricks, and secret-finding resources.
Review this PR diff carefully:
{diff_text}
Provide concise, actionable feedback in Markdown:
- **Summary**: One-sentence overview of changes
- **Strengths**: What is good (e.g., new valuable resources, clean formatting)
- **Issues/Suggestions**:
- Formatting/consistency (links, headings, lists)
- Potential inaccuracies or outdated info
- Security risks (e.g., dangerous commands without warnings)
- Improvements (clarity, better structure, missing cross-references)
- **Overall**: Approve, Request changes, or Comment (with emoji rating)
Be strict but constructive. Flag anything promotional/spammy.
"""
response = client.chat.completions.create(
model=os.environ["GROK_MODEL"],
messages=[
{"role": "system", "content": "You are an expert code/knowledge reviewer."},
{"role": "user", "content": prompt}
],
temperature=0.4, # lower for focused reviews
max_tokens=1200
)
review_body = response.choices[0].message.content.strip()
# Post as comment
comment_url = f"https://api.github.com/repos/{repo}/issues/{pr_number}/comments"
comment_headers = {
"Accept": "application/vnd.github+json",
"Authorization": f"Bearer {token}",
"X-GitHub-Api-Version": "2022-11-28"
}
payload = {"body": f"### Grok AI Review\n\n{review_body}"}
requests.post(comment_url, json=payload, headers=comment_headers)
print("Review posted.")
EOF

2
.gitignore vendored
View File

@ -1,2 +0,0 @@
/.obsidian
.kateproject

View File

View File

@ -11,14 +11,14 @@
"id": "53378cd3734e8ec5",
"type": "leaf",
"state": {
"type": "markdown",
"type": "split-diff-view",
"state": {
"file": "collaboration_proposal.md",
"mode": "source",
"source": false
"aFile": ".obsidian/workspace.json",
"bFile": ".obsidian/workspace.json",
"aRef": ""
},
"icon": "lucide-file",
"title": "collaboration_proposal"
"icon": "diff",
"title": "Diff: workspace.json (Working Tree)"
}
}
]
@ -207,6 +207,7 @@
},
"active": "53378cd3734e8ec5",
"lastOpenFiles": [
"conflict-files-obsidian-git.md",
"collaboration_proposal.md",
"README.md",
"docs/my-contributions.md",

View File

@ -3,12 +3,6 @@
**This branch is under heavy revision — do not merge to main yet.**
- All recent work (since fork on 2026-03-03) is by @jacob-kraniak
- 20+ personal commits focused on:
- Structural refactor: monolithic README → modular `/docs/*.md` files
- Obsidian vault integration (backups, .gitignore exclusions)
- Repo quality: markdownlint setup, GitHub Actions linting/labeling
- Initial cleanup: replaced broken links with status codes
- Placeholders for future cybersecurity certification additions
- Upstream history (pre-2026 commits) remains from original trimstray repo for credit & context
**See only my changes:**
@ -27,7 +21,7 @@ When ready: Plan to squash-merge or rebase + clean history into main.
- All content present at commit hash: [insert upstream commit hash at fork time, e.g., 7d37069a...]
## My Contributions
https://github.com/jacob-kraniak/the-book-of-secret-knowledge/blob/JK_Revisions/docs/my-contributions.md
--------------------------