Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

Back to skills

Cortex Register Tasks

ASecurity

Register or activate this project''s cortex scheduled tasks in the Claude Desktop app.

2 stars
0 votes
0 copies
0 views
Added 9/19/2026
developmentbashexpress

Works with

claude desktopclimcp

Security Analysis

A100/100

Scanned 9/19/2026

Install to Claude Code

$npx -y skills add pedropacheco95/cortex --skill cortex-register-tasks --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Cortex Register Tasks?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Cortex Register Tasks
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/pedropacheco95-cortex-register-tasks-cortex/badge)](https://www.skillsdirectory.com/skills/pedropacheco95-cortex-register-tasks-cortex)

More formats (shields.io, HTML) on the badges page.

Download Zip
Files
SKILL.md
---
name: cortex-register-tasks
description: 'Register or activate this project''s cortex scheduled tasks in the Claude Desktop app.'
---

# cortex-register-tasks

## When to use

Use when the user says "register the cortex scheduled tasks", "run
cortex-register-tasks", "set up the cortex loops in the app", "activate the
cortex tasks", or after `cortex init` / `cortex tasks verify` reports tasks not
yet registered.

Registers a Cortex project's five scheduled-task bundles with the Claude Desktop
app, **from inside a Claude Desktop session**, using the app's own
scheduled-tasks tools: reads the authoritative plan from `cortex tasks plan
--json`, diffs it against `mcp__scheduled-tasks__list_scheduled_tasks`,
creates/updates only this project's tasks (replacing its own superseded legacy
tasks), and confirms with `cortex tasks verify`.

## What you do

You register this project's five Cortex scheduled-task bundles with the Claude
Desktop app the sanctioned way: through the app's own internal MCP tools, from
inside a Desktop-spawned session. You never write the app's
`scheduled-tasks.json` yourself, and you never touch tasks that belong to
another project.

## 0. Preflight — this MUST be a Claude Desktop session

The `mcp__scheduled-tasks__*` tools (`create_scheduled_task`,
`update_scheduled_task`, `list_scheduled_tasks`, and a delete/remove tool if
the app exposes one) are an internal MCP server the Desktop app exposes ONLY to
sessions it spawns. Check that they are available to you.

**If they are not available: stop.** Do not fall back to editing any file.
Tell the user: "This skill needs the Desktop app's own scheduled-tasks tools,
which exist only in Claude Desktop sessions. Open this repository in the
Claude Desktop app (new session) and say `run cortex-register-tasks` there."

Why file-editing is forbidden here: the app loads `scheduled-tasks.json`
into memory once per launch and rewrites the whole file from memory on every
task event — an external edit is clobbered while the app runs, and a single
malformed field makes the app treat the entire file as empty and wipe ALL
tasks on its next flush.

**Warn the user before you start creating.** The app demands a live approval
for every `create_scheduled_task` call and does NOT offer "always allow" for
task creation. Tell the user up front: "The app will ask you to approve each
task registration — one prompt per bundle (5 total). Stay at the keyboard and
approve each." Then proceed; if a prompt is declined or times out, record that
bundle as skipped and continue with the rest, listing skipped bundles in the
final report so the user can re-run for just those.

## 1. Get the authoritative plan from Core

From the project root, run:

```bash
cortex tasks plan --json
```

This is the single source of truth — never hardcode ids, cron expressions,
models, paths, or counts. The JSON shape (`planVersion: 2`):

```json
{
  "planVersion": 2,
  "projectRoot": "/abs/path",
  "taskCount": 5,
  "tasks": [
    {
      "id": "<scoped id — also the payload dir name>",
      "canonical": "<bundle name: daily | weekly-curation | weekly-quality | test-runner | monthly-review>",
      "cronExpression": "0 2 * * *",
      "model": "claude-sonnet-5",
      "cwd": "/abs/path",
      "enabled": true,
      "useWorktree": false,
      "permissionMode": "bypassPermissions",
      "payloadPath": "~/.claude/scheduled-tasks/<id>/SKILL.md (absolute)",
      "description": "one line"
    }
  ]
}
```

There are FIVE bundles, each a single scheduled task that runs its member
loops in sequence. Sanity-check that each plan entry's `payloadPath` exists on
disk (written by `cortex init`). If any payload is missing, do not register
that entry — report the missing payloads and tell the user to re-run
`cortex init` (non-force) to restore them, then re-invoke this skill.

## 2. Diff against what the app already has

Call `mcp__scheduled-tasks__list_scheduled_tasks` and classify every app task:

- **Missing** — a plan `id` with no app task of that id → create it (step 3).
- **Drifted** — an app task with a plan `id` but whose cron, model, or enabled
  flag differs from the plan → update it (step 4).
- **In sync** — plan `id` present, enabled, cron and model match → leave it.
- **This project's legacy/superseded task** — an app task that is NOT one of
  the five plan ids but clearly belongs to THIS project: its `cwd` (working
  directory / folder) equals the plan's `projectRoot`, and/or its id is one of
  this project's fourteen old standalone loop registrations under this
  project's slug — in either the plain `<slug>-<canonical>` grammar or the
  older `<slug>-<hash6>-<canonical>` grammar (e.g. `<slug>-cortex-pulse-hygiene`,
  `<slug>-cortex-loop-skill-suggest`, `<slug>-specflow-verify`, …). These are
  superseded by the five bundles → **delete them** (delete/remove tool if
  present; otherwise disable them) so they don't linger as duplicates. Then
  create the five bundles. Never leave the old fourteen running alongside the
  new five.
- **Not ours** — any app task whose `cwd` is a DIFFERENT project root (or that
  carries no Cortex ownership signal at all): NEVER create, update, disable, or
  delete it. Same-name tasks of other projects are protected by their `cwd`.

## 3. Create each missing bundle

For each missing plan entry, call
`mcp__scheduled-tasks__create_scheduled_task`. You do not know the tool's
exact argument names ahead of time — **read the tool's input schema at
runtime** and map plan fields onto it sensibly:

- id / name / task identifier → the plan `id` (the scoped name). This is
  load-bearing: the app recomputes the payload file path from the id, so the
  id MUST equal the payload directory name — which the plan guarantees.
- schedule / cron → the plan `cronExpression`.
- model → the plan `model`. The create tool exposes an optional `model` string
  field (per its zod schema); pass the plan's `model` straight through. If the
  tool has no model field at all, skip it — the payload SKILL.md carries a
  `model:` frontmatter key the app falls back to.
- folder / directory / cwd → the plan `cwd` (the project root).
- permission mode → the plan `permissionMode`.
- worktree flag, if present → the plan `useWorktree` (false).
- enabled flag, if present → true.

**Do NOT invent instructions/prompt content.** The bundle's SKILL.md payload
already exists at the id-derived path (`~/.claude/scheduled-tasks/<id>/SKILL.md`
— the plan's `payloadPath`). If the create tool requires a prompt/instructions
text field, pass the body of that existing payload file verbatim.

## 4. Update each drifted bundle

For each existing-but-drifted task (wrong cron, wrong model, disabled), call
`mcp__scheduled-tasks__update_scheduled_task` with that task's id, setting only
what drifted: the plan's `cronExpression`, `model`, and/or enabled = true.
Change nothing else on the entry.

## 5. Verify and report

The whole flow is idempotent — re-running it against an already-registered
project makes no create/update/delete calls.

Finish by running, from the project root:

```bash
cortex tasks verify
```

Report to the user:

- a table: bundle (canonical) | scoped id | cron | model | action taken
  (created / updated / replaced-legacy / in sync) | verify result;
- the `cortex tasks verify` bottom line (all five registered, or the named
  failures);
- the reminder: **Desktop app updates have wiped this registry before** — if
  `cortex tasks verify` ever fails after an app update, re-run this skill in
  a Desktop session to re-register.

Attribution

pedropacheco95pedropacheco95
View sourceMore from pedropacheco95 →
SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

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 (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Related Skills

Browser Extension Developer

Use this skill when developing or maintaining browser extension code in the `browser/` directory, including Chrome/Firefox/Edge compatibility, content scripts, background scripts, or i18n updates.

281612 votes

Seo Optimizer

SEO optimization with keyword analysis, readability assessment, technical validation, content quality. Use for search rankings, blog posts, content audits, or encountering keyword density, readability scores, meta tags, schema markup errors.

2132 votes

Google Official Seo Guide

Official Google SEO guide covering search optimization, best practices, Search Console, crawling, indexing, and improving website search visibility based on official Google documentation

1862 votes

Tanstack Start

Build a full-stack TanStack Start app on Cloudflare Workers from scratch — SSR, file-based routing, server functions, D1+Drizzle, better-auth, Tailwind v4+shadcn/ui. Use whenever the user mentions TanStack Start, asks to scaffold a full-stack Cloudflare app with SSR, wants an SSR dashboard, or asks for a React 19 + Cloudflare Workers app with file-based routing and server functions — even if they don't name TanStack Start specifically. No template repo — Claude generates every file fresh per ...

9881 votes

Pentest

PTES-aligned adversarial security audit for backend, frontend, and mobile applications. Produces a CVSS-scored Hacker Report with verified PoCs and phased remediation.

5491 votes
View all in development →