Skip to content
Back to skills

Goal

ASecurity

Create or show a goal row in the tracker and tie tasks to it, with a duplicate-title check before every create. Goals have a horizon: north-star, 3-year, 1-year, or quarter. Use for /goal create, /goal show, /goal link, or when someone asks what a goal is or which tasks serve it.

  • 7 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added November 7, 2026
ai-agentspythongobashsqldatabase

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned November 7, 2026

npx -y skills add foxrun-ai/foxrun --skill goal --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Goal?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Goal
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/foxrun-ai-goal/badge)](https://www.skillsdirectory.com/skills/foxrun-ai-goal)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
type: note
workspace: system
timestamp: 2026-10-26T14:10:00-04:00
name: goal
description: "Create or show a goal row in the tracker and tie tasks to it, with a duplicate-title check before every create. Goals have a horizon: north-star, 3-year, 1-year, or quarter. Use for /goal create, /goal show, /goal link, or when someone asks what a goal is or which tasks serve it."
kind: knowledge
argument-hint: "create | show | link <goal id or title words>"
---

# goal

One skill for the goal object. A goal says what the work is for, over a horizon.
Tasks roll up to a goal, so the person can see which work serves which goal.

## Find the tracker

Set `<ws>` to the workspace that owns the work. Do not route by the current folder alone.
Set `<tracker>` to `workspace_settings.<ws>.database` in `~/.foxrun/config/person.json`. If it is absent, use `~/.foxrun/data.db`.
In the commands below, `<work>` stands for this exact prefix:

```bash
python3 ~/.foxrun/work/work.py --workspace <ws> --db <tracker> --receipt-root ~/foxrun/<ws> --by <you>
```

Write `<you>` as your own agent name, never the runtime name.

## Steps

1. **Check for a duplicate first.** Before any `create`, run:
   `sqlite3 -readonly <tracker> "SELECT id,title,horizon,period,status FROM goals WHERE title LIKE '%<words>%' ORDER BY id"`.
   Done when you named the match, or said there is none.
2. **Get the yes.** A goal is the person's call. Show the title, horizon, and period, and wait for the yes. Done when the person said yes.
3. **Run the operation.** Done when the command prints `ok`.

   | Operation | Command |
   |---|---|
   | create | `<work> goal-create --title "<goal>" --horizon quarter --period 2026-Q4 [--owner <name>] [--tags ...]` |
   | link | `<work> task-goal <task id> --goal <goal id>` |
   | show | `sqlite3 -readonly <tracker> "SELECT id,title,horizon,period,owner,status FROM goals WHERE id='<goal id>'"` |

4. **Read it back.** Run the `show` query. Done when the row shows the title and horizon you wrote.

## Gotchas

- `--horizon` takes only `north-star`, `3-year`, `1-year`, or `quarter`.
- The owner is a person's plain name. Read it from the `persons` table; do not type a name from memory.

Files in this skill

  • SKILL.md2.1 KB
  • replays/horizon-values.json183 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.