원클릭으로
tasks
Task & project management — GitHub Projects (native), Linear (API), Notion DB (API)
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Task & project management — GitHub Projects (native), Linear (API), Notion DB (API)
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
The mandatory operational guide and metabolic flow for agents interacting with arifOS. Ditempa Bukan Diberi.
Governed intelligence skill for AAA as the abstraction, attestation, and abduction control plane across arifOS, APEX, A-FORGE, GEOX, WEALTH, WELL, and the ariffazil profile repository. Use when the user asks to explain or design AAA, route agentic work, reduce chaos/entropy in an arifOS federation task, create AREP/task declarations, classify risk, plan multi-repo changes, review governance boundaries, or translate human intent into evidence-backed, authority-safe, recursively agentic workflows. Provides deterministic F1-F13 floor checking, bounded abduction, and FederationReceipt composition.
Instrument arifOS constitutional AI kernel with Langfuse LLM tracing. Use when (1) adding Langfuse tracing to arifOS tool calls, (2) wiring arifOS telemetry to Langfuse cloud or self-hosted, (3) querying arifOS trace data from Langfuse, (4) migrating arifOS mind_reason/heart_critique calls to Langfuse spans. DITEMPA BUKAN DIBERI — Forged, Not Given.
GitHub operations — issues, PRs, commits, code search, CI/CD via gh CLI
AGI-level autonomous controller — self-healing, self-optimizing, constitutionally governed by arifOS F1-F13
Invoke arifOS constitutional MCP tools (000-999 pipeline, F1-F13 enforced)
| name | tasks |
| description | Task & project management — GitHub Projects (native), Linear (API), Notion DB (API) |
| user-invocable | true |
Triggers: "task", "todo", "create task", "project", "kanban", "issue", "sprint", "what are my tasks", "add to backlog", "close task", "task status", "linear", "github project", "my tasks"
| Tool | Status | Best for | Cost |
|---|---|---|---|
| GitHub Projects | ✅ Ready (GH_TOKEN set) | Code-linked tasks, arifOS issues | Free |
| Notion Database | ⚠️ Need NOTION_API_KEY | Notes + tasks in one place | Free tier |
| Linear | ⚠️ Need LINEAR_API_KEY | Engineering sprints, roadmaps | You have it |
Recommendation for Arif: GitHub Projects for code work (zero new keys), Notion DB for life/PKM tasks (one integration token). Linear if you want structured sprints.
Uses gh CLI with existing GITHUB_TOKEN. GitHub Issues + Projects V2 board.
gh issue create -R ariffazil/arifOS \
--title "Task title" \
--body "Description and acceptance criteria" \
--label "enhancement" \
--assignee ariffazil
gh issue list -R ariffazil/arifOS \
--assignee ariffazil \
--state open \
--limit 20 \
--json number,title,labels,createdAt \
| python3 -c "
import sys, json
issues = json.load(sys.stdin)
for i in issues:
labels = ','.join([l['name'] for l in i['labels']]) or '-'
print(f\"#{i['number']:4} [{labels:20}] {i['title']}\")
"
gh issue edit 42 -R ariffazil/arifOS --add-label "in-progress"
gh issue edit 42 -R ariffazil/arifOS --remove-label "todo" --add-label "done"
gh issue close 42 -R ariffazil/arifOS --comment "Completed"
# List your projects
gh project list --owner ariffazil
# Add issue to project
gh project item-add PROJECT_NUMBER --owner ariffazil --url https://github.com/ariffazil/arifOS/issues/42
# List project items
gh project item-list PROJECT_NUMBER --owner ariffazil --format json \
| python3 -c "import sys,json; [print(i.get('title','?'),'-',i.get('status','?')) for i in json.load(sys.stdin).get('items',[])]"
# 1. Get API key: https://linear.app/settings/api → Personal API Keys
# 2. Add to VPS:
echo 'LINEAR_API_KEY=lin_api_YOUR_KEY_HERE' >> /root/arifOS/.env
docker compose up -d --force-recreate openclaw
curl -s -X POST https://api.linear.app/graphql \
-H "Authorization: ${LINEAR_API_KEY}" \
-H "Content-Type: application/json" \
-d '{
"query": "query { viewer { assignedIssues(first: 20, filter: {state: {type: {nin: [\"completed\",\"cancelled\"]}}}) { nodes { id title priority state { name } team { name } dueDate } } } }"
}' | python3 -c "
import sys, json
d = json.load(sys.stdin)
issues = d['data']['viewer']['assignedIssues']['nodes']
for i in issues:
priority = ['', 'Urgent', 'High', 'Med', 'Low'][i.get('priority',0)] if i.get('priority') else '-'
print(f\"[{priority:6}] [{i['state']['name']:15}] {i['title']}\")
"
# First get team ID
TEAM_ID=$(curl -s -X POST https://api.linear.app/graphql \
-H "Authorization: ${LINEAR_API_KEY}" \
-H "Content-Type: application/json" \
-d '{"query":"query { teams { nodes { id name } } }"}' \
| python3 -c "import sys,json; teams=json.load(sys.stdin)['data']['teams']['nodes']; print(teams[0]['id'])")
curl -s -X POST https://api.linear.app/graphql \
-H "Authorization: ${LINEAR_API_KEY}" \
-H "Content-Type: application/json" \
-d "{
\"query\": \"mutation CreateIssue(\$input: IssueCreateInput!) { issueCreate(input: \$input) { success issue { id title } } }\",
\"variables\": {
\"input\": {
\"teamId\": \"${TEAM_ID}\",
\"title\": \"Task title here\",
\"description\": \"Details here\",
\"priority\": 3
}
}
}" | python3 -c "import sys,json; d=json.load(sys.stdin); print('Created:', d['data']['issueCreate']['issue']['title'])"
ISSUE_ID="YOUR-ISSUE-ID"
# Get state IDs first
curl -s -X POST https://api.linear.app/graphql \
-H "Authorization: ${LINEAR_API_KEY}" \
-H "Content-Type: application/json" \
-d '{"query":"query { workflowStates { nodes { id name } } }"}' \
| python3 -c "import sys,json; [print(s['name'],':',s['id']) for s in json.load(sys.stdin)['data']['workflowStates']['nodes']]"
If you prefer Notion databases as your kanban board (uses NOTION_API_KEY from Notion skill):
# Requires: NOTION_API_KEY + a Notion DB with Status property
TASKS_DB_ID="YOUR-NOTION-TASKS-DB-ID"
# List Todo tasks
curl -s -X POST "https://api.notion.com/v1/databases/${TASKS_DB_ID}/query" \
-H "Authorization: Bearer ${NOTION_API_KEY}" \
-H "Notion-Version: 2022-06-28" \
-H "Content-Type: application/json" \
-d '{"filter":{"property":"Status","select":{"equals":"Todo"}},"page_size":20}' \
| python3 -c "
import sys, json
d = json.load(sys.stdin)
for row in d['results']:
props = row['properties']
for k, v in props.items():
if v.get('type') == 'title':
title = ''.join([t['plain_text'] for t in v['title']])
print(f' • {title}')
"
# Add task
curl -s -X POST https://api.notion.com/v1/pages \
-H "Authorization: Bearer ${NOTION_API_KEY}" \
-H "Notion-Version: 2022-06-28" \
-H "Content-Type: application/json" \
-d "{
\"parent\": {\"database_id\": \"${TASKS_DB_ID}\"},
\"properties\": {
\"Name\": {\"title\": [{\"text\": {\"content\": \"New task here\"}}]},
\"Status\": {\"select\": {\"name\": \"Todo\"}}
}
}" | python3 -c "import sys,json; d=json.load(sys.stdin); print('Task created:', d.get('id'))"
When Arif says "add task" or "create task" without specifying:
ariffazil/arifOSarifOS_bot — Tasks via GitHub Projects (native) + Linear + Notion