Skip to content
Back to skills

Tududi

ASecurity

Manage tasks, projects, and notes in tududi (self-hosted task manager). Use for todo lists, task management, project organization.

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added November 11, 2026
securitybashapi

Works with

  • api

Security analysis

A100/100

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

Scanned November 11, 2026

npx -y skills add johnalbertini14-glitch/openclaw-skills --skill tududi --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Tududi?

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

Security grade badge for Tududi
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/johnalbertini14-glitch-tududi/badge)](https://www.skillsdirectory.com/skills/johnalbertini14-glitch-tududi)

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
---
name: tududi
description: Manage tasks, projects, and notes in tududi (self-hosted task manager). Use for todo lists, task management, project organization.
---

# tududi Task Management

## Configuration

Uses environment variables (set in `openclaw.json` under `skills.entries.tududi.env`):
- `TUDUDI_URL` - Base URL (e.g., `http://localhost:3004`)
- `TUDUDI_API_TOKEN` - API token from tududi Settings → API Tokens

## Authentication

All API calls require the header:
```
Authorization: Bearer $TUDUDI_API_TOKEN
```

## API Route Convention

- **Plural nouns** (`/tasks`, `/projects`, `/inbox`) for **GET** (list)
- **Singular nouns** (`/task`, `/project`) for **POST/PUT/DELETE** (create/update/delete)
- Use **UID** (not numeric ID) for update/delete operations

## Common Operations

### List tasks
```bash
curl -s $TUDUDI_URL/api/v1/tasks \
  -H "Authorization: Bearer $TUDUDI_API_TOKEN"
```

### Create a task
```bash
curl -s -X POST $TUDUDI_URL/api/v1/task \
  -H "Authorization: Bearer $TUDUDI_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name": "Task title", "due_date": "2026-02-10", "priority": 2, "project_id": 1, "tags": [{"name": "bug"}]}'
```

Priority: 1 (low) to 4 (urgent)
Tags: `[{"name": "tagname"}, ...]`

### Update a task
```bash
curl -s -X PATCH $TUDUDI_URL/api/v1/task/{uid} \
  -H "Authorization: Bearer $TUDUDI_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"status": 1, "tags": [{"name": "bug"}]}'
```

Status: 0=not_started, 1=in_progress, 2=completed, 6=archived
Tags: `[{"name": "tagname"}, ...]`

### Delete a task
```bash
curl -s -X DELETE $TUDUDI_URL/api/v1/task/{uid} \
  -H "Authorization: Bearer $TUDUDI_API_TOKEN"
```

### List projects
```bash
curl -s $TUDUDI_URL/api/v1/projects \
  -H "Authorization: Bearer $TUDUDI_API_TOKEN"
```

### Create project
```bash
curl -s -X POST $TUDUDI_URL/api/v1/project \
  -H "Authorization: Bearer $TUDUDI_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name": "Project name"}'
```

### Inbox
```bash
# List inbox items
curl -s $TUDUDI_URL/api/v1/inbox \
  -H "Authorization: Bearer $TUDUDI_API_TOKEN"

# Delete inbox item (use UID)
curl -s -X DELETE $TUDUDI_URL/api/v1/inbox/{uid} \
  -H "Authorization: Bearer $TUDUDI_API_TOKEN"
```

### Tags
```bash
curl -s $TUDUDI_URL/api/v1/tags \
  -H "Authorization: Bearer $TUDUDI_API_TOKEN"
```

## Task Statuses
- `not_started`
- `in_progress`
- `completed`
- `archived`

## Filters
- `$TUDUDI_URL/api/v1/tasks?filter=today` - Due today
- `$TUDUDI_URL/api/v1/tasks?filter=upcoming` - Future tasks
- `$TUDUDI_URL/api/v1/tasks?filter=someday` - No due date
- `$TUDUDI_URL/api/v1/tasks?project_id={id}` - By project

## API Docs
Swagger UI available at `$TUDUDI_URL/swagger` (requires login)

Files in this skill

  • SKILL.md2.7 KB
  • _meta.json444 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.

View all in security →

Comments

Loading comments…

Newsletter

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