Skip to content
Agentmart
Submit a tool

tasks

Task & project management — GitHub Projects (native), Linear (API), Notion DB (API)

Skill by ariffazil

IndexedAGPL-3.0★ 54
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/ariffazil-tasks

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Task & project management — GitHub Projects (native), Linear (API), Notion DB (API)

Use cases: backend, productivity

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md and code. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/tasks

What's inside

Skill name
tasks
Description
Task & project management — GitHub Projects (native), Linear (API), Notion DB (API)
License
AGPL-3.0
Instructions
187 lines in SKILL.md · view on GitHub

Before installing

  • Instructions call the network

Files (1)

  • SKILL.md

SKILL.md (first lines)

# Tasks & Projects Skill — arifOS_bot

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"

---

## Option Comparison

| 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.

---

## GitHub Projects (Ready — No Setup Needed)

Uses `gh` CLI with existing `GITHUB_TOKEN`. GitHub Issues + Projects V2 board.

### Create an issue (= task)
```bash
gh issue create -R ariffazil/arifOS \
  --title "Task title" \
  --body "Description and acceptance criteria" \
  --label "enhancement" \
  --assignee ariffazil
```

### List my open tasks
```bash
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']}\")
"
```

### Update task status (via label)
```bash
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"
```

### View project board (GitHub Projects V2)
```bash
# 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',[])]"
```

---

## Linear (GraphQL API)

### ⚙️ Setup (one-time)
```bash
# 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
```

### My assigned issues
```bash
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']}\")
"
```

### Create issue
```bash
# 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
      }

From ariffazil/arifOS, AGPL-3.0.

More from ariffazil/arifOS

Signals

Stars
54
Forks
9
Open issues
3
Contributors
98
Last commit (this folder)
May 11, 2026 (5 months ago)
Last release
Oct 17, 2026 (12 days ago)

From GitHub (fetched Oct 24, 2026).

Details

License
AGPL-3.0
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from ariffazil

Cite this page

tasks skill. Agent Mart. https://agentmart.dev/skills/ariffazil-tasks (last updated 2026-10-24)