Freedcamp Agent Skill
Manage Freedcamp tasks, projects, groups, comments, notifications, and task lists via HMAC-SHA1 API
- Rating
- 5 (264 reviews)
- Downloads
- 670 downloads
- Version
- 1.0.0
Overview
Manage Freedcamp tasks, projects, groups, comments, notifications, and task lists via HMAC-SHA1 API credentials.
Complete Documentation
View Source →
Freedcamp
This skill provides a dependency-free Node.js CLI that calls the Freedcamp REST API (v1) using HMAC-SHA1 secured credentials (API Key + API Secret).
- Script:
{baseDir}/scripts/freedcamp.mjs - Auth:
FREEDCAMP_API_KEY+FREEDCAMP_API_SECRET - Output: JSON only (stdout), suitable for agents and automation
Setup
- Obtain your Freedcamp API key and secret from your Freedcamp account settings.
- Provide both values as environment variables.
Common injection patterns
- Shell env (local testing):
export FREEDCAMP_API_KEY="..."
export FREEDCAMP_API_SECRET="..."
- OpenClaw config (recommended): set
skills.entries.freedcamp.apiKeyandskills.entries.freedcamp.env.FREEDCAMP_API_SECRETso secrets are injected only for the agent run.
Configure via OpenClaw CLI (recommended)
openclaw config set skills.entries.freedcamp.enabled true
openclaw config set skills.entries.freedcamp.apiKey "YOUR_API_KEY"
openclaw config set skills.entries.freedcamp.env.FREEDCAMP_API_SECRET "YOUR_API_SECRET"
Verify what is stored:
openclaw config get skills.entries.freedcamp
Remove stored credentials:
openclaw config unset skills.entries.freedcamp.apiKey
openclaw config unset skills.entries.freedcamp.env.FREEDCAMP_API_SECRET
First calls (sanity + discovery)
- Who am I / session info:
node {baseDir}/scripts/freedcamp.mjs me
- List all groups, projects, and apps:
node {baseDir}/scripts/freedcamp.mjs groups-projectsID resolution
When the user provides project names, resolve to IDs using:
groups-projectsreturns all groups with their projects, including project IDs and names- Use the exact
project_namefrom the output for other commands
Core: tasks
List tasks in a project
node {baseDir}/scripts/freedcamp.mjs tasks --project
List tasks with filters
node {baseDir}/scripts/freedcamp.mjs tasks --project
Useful filters:
--statuscomma-separated:not_started,completed,in_progress,invalid,review--assigned_tocomma-separated user IDs.0= unassigned,-1= everyone--due_from YYYY-MM-DD/--due_to YYYY-MM-DD--created_from YYYY-MM-DD/--created_to YYYY-MM-DD--list_status active|archived|all--with_archived trueto include tasks from archived projects--limit(max 200 per page, default 200)--offsetfor pagination
Get a single task (with comments and files)
node {baseDir}/scripts/freedcamp.mjs task
Create a task
node {baseDir}/scripts/freedcamp.mjs create-task --project
With optional description and task list:
node {baseDir}/scripts/freedcamp.mjs create-task --project
Update a task
node {baseDir}/scripts/freedcamp.mjs update-task
Status values: not_started (0), completed (1), in_progress (2), invalid (3), review (4)
Create a task by project name
node {baseDir}/scripts/freedcamp.mjs create-task-by-name --project_name "My Project" --app_name "Tasks" --title "New task"
Resolves the project name to an ID using session data. Currently supports the Tasks app.
Task lists (groups)
- List task lists for a project:
node {baseDir}/scripts/freedcamp.mjs task-lists --project
- Specify app (default is Tasks / app_id 2):
node {baseDir}/scripts/freedcamp.mjs task-lists --project --app_id 2 Comments
- Add a comment to any item:
node {baseDir}/scripts/freedcamp.mjs comment --app_name "Tasks" --text "My comment" Comments are automatically wrapped in tags. You can also pass raw HTML:
Bold textnode {baseDir}/scripts/freedcamp.mjs comment
App names for comments
When adding comments, the --app_name must be one of:
Tasks, Discussions, Milestones, Time, Files, Issue Tracker, Wikis, CRM, Passwords, Calendar, Planner, Translations
Notifications
- Fetch recent notifications (last 60 days):
node {baseDir}/scripts/freedcamp.mjs notifications
- Mark a notification as read:
node {baseDir}/scripts/freedcamp.mjs mark-read Data model reference
Task statuses
| Name | Value | CLI flag |
|---|---|---|
| Not Started | 0 | not_started |
| Completed | 1 | completed |
| In Progress | 2 | in_progress |
| Invalid | 3 | invalid |
| Review | 4 | review |
Priorities
| Name | Value |
|---|---|
| None | 0 |
| Low | 1 |
| Medium | 2 |
| High | 3 |
App types
| ID | Name | Key |
|---|---|---|
| 2 | Tasks | TODOS |
| 3 | Discussions | DISCUSSIONS |
| 4 | Milestones | MILESTONES |
| 5 | Time | TIME |
| 6 | Files | FILES |
| 13 | Issue Tracker | BUGTRACKER |
| 14 | Wikis | WIKI |
| 16 | CRM | CRM |
| 17 | Passwords | PASSMAN |
| 19 | Calendar | CALENDAR |
| 47 | Planner | PLANNER |
| 48 | Translations | TRANSLATIONS |
Important notes
- Comments must contain HTML. Plain text passed via
--textis auto-wrapped intags. - Task pagination max is 200 per request; use
--offsetfor more. - Session is cached locally and auto-refreshes on 401 errors.
- The
--allflag ontasksauto-paginates to fetch every result.
Out of scope
- Invoices and Invoices Plus APIs are not exposed.
- "Bot personality" is not embedded; configure behavior in your agent prompt.
Installation
openclaw install freedcamp-agent-skill
💻Code Examples
openclaw config set skills.entries.freedcamp.enabled true
openclaw config set skills.entries.freedcamp.apiKey "YOUR_API_KEY"
openclaw config set skills.entries.freedcamp.env.FREEDCAMP_API_SECRET "YOUR_API_SECRET"Tags
Quick Info
Ready to Install?
Get started with this skill in seconds
Related Skills
4claw
4claw — a moderated imageboard for AI agents.
Aap Passport
Agent Attestation Protocol - The Reverse Turing Test.
Acestep Lyrics Transcription
Transcribe audio to timestamped lyrics using OpenAI Whisper or ElevenLabs Scribe API.
Adaptive Suite
A continuously adaptive skill suite that empowers Clawdbot.