fix(ci): trigger workflow on main branch to enable :latest tag

Changes:
- Create Gitea workflow for ai-stack-deployer
- Trigger on main branch (default branch)
- Use oussamadouhou + REGISTRY_TOKEN for authentication
- Build from ./Dockerfile

This enables :latest tag creation via {{is_default_branch}}.

Tags created:
- git.app.flexinit.nl/oussamadouhou/ai-stack-deployer:latest
- git.app.flexinit.nl/oussamadouhou/ai-stack-deployer:<sha>

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
Oussama Douhou
2026-01-09 23:33:39 +01:00
commit 19845880e3
46 changed files with 9875 additions and 0 deletions

View File

@@ -0,0 +1,41 @@
# Session History Extraction
## Quick Commands
**Find latest session:**
```bash
ls -lht ~/.claude/projects/-home-odouhou-locale-projects-ai-stack-deployer/ | head -5
```
**Extract last 5 messages:**
```bash
tail -100 ~/.claude/projects/-home-odouhou-locale-projects-ai-stack-deployer/SESSION_ID.jsonl | \
jq -r 'select(.message.role == "assistant") | .message.content[] | select(.type == "text") | .text' 2>/dev/null | \
tail -5
```
**Search for keywords:**
```bash
grep -i "keyword" SESSION_FILE.jsonl | tail -10
```
## One-liner
```bash
# Get last 5 messages from most recent session
ls -t ~/.claude/projects/-home-odouhou-locale-projects-ai-stack-deployer/*.jsonl | head -1 | \
xargs tail -100 | \
jq -r 'select(.message.role == "assistant") | .message.content[] | select(.type == "text") | .text' 2>/dev/null | \
tail -5
```
## Session Structure
```json
{
"message": {
"role": "assistant",
"content": [{"type": "text", "text": "message here"}]
}
}
```

32
.claude/init-session.sh Executable file
View File

@@ -0,0 +1,32 @@
#!/bin/bash
# Session init: START-HERE.md → project state → last session
PROJECT_NAME="ai-stack-deployer"
PROJECT_PATH="/home/odouhou/locale-projects/${PROJECT_NAME}"
SESSION_DIR="${HOME}/.claude/projects/-home-odouhou-locale-projects-${PROJECT_NAME}"
echo "=== 🤖 Session Init ==="
echo ""
# START-HERE.md
[ -f "${PROJECT_PATH}/START-HERE.md" ] && cat "${PROJECT_PATH}/START-HERE.md" && echo ""
# Project state
echo "📂 $(pwd)"
echo "🔧 $(cd "${PROJECT_PATH}" && git status 2>&1 | head -1 || echo "Not a git repo")"
echo ""
# Last session
LATEST_SESSION=$(ls -t ${SESSION_DIR}/*.jsonl 2>/dev/null | head -1)
if [ -f "$LATEST_SESSION" ]; then
echo "💬 Last 3 messages:"
tail -100 "$LATEST_SESSION" | \
jq -r 'select(.message.role == "assistant") | .message.content[] | select(.type == "text") | .text' 2>/dev/null | \
tail -3 | \
while IFS= read -r line; do
echo "${line:0:120}$([ ${#line} -gt 120 ] && echo '...')"
done
fi
echo ""
echo "=== ✅ Ready ==="