0aefa9d
docs(readme): link to liberapay
Amolith created
0aefa9d
docs(readme): link to liberapay
Amolith created
345d7a4
refactor(cmd): use net.JoinHostPort for host:port
Handles IPv6 addresses correctly and avoids redundant fmt.Sprintf calls. Assisted-by: Claude Opus 4.5 via Crush
Amolith created
09dc476
refactor(style): auto-fix golangci-lint issues
Amolith created
9a5989b
chore: add golangci-lint config
Assisted-by: Claude Opus 4.5 via Crush
Amolith created
6bc319d
refactor: use external go-lunatask package
Remove internal lunatask/ package and depend on git.secluded.site/go-lunatask instead. This allows the Lunatask API client to be reused across projects. Assisted-by: Claude Opus 4.5 via Crush
Amolith created
f81cb6a
fix(lunatask): make Note.NotebookID optional
Aligns response type with CreateNoteRequest now that notebooks are optional. Assisted-by: Claude Sonnet 4 via Crush
Amolith created
e00edfa
feat(lunatask): add builder pattern for requests
Fluent builders for: TaskBuilder, TaskUpdateBuilder, NoteBuilder,
JournalEntryBuilder, PersonBuilder, TimelineNoteBuilder.
Example: task := lunatask.NewTask("Call
mom").InArea(id).WithPriority(1).Build()
Assisted-by: Claude Sonnet 4 via Crush
Amolith created
ac612e6
feat(lunatask): add CreateJournalEntry endpoint
Assisted-by: Claude Sonnet 4 via Crush
Amolith created
7aca3e8
feat(lunatask): improve notes API
- GetNote: speculative implementation following existing patterns (API may support it but undocumented) - NotebookID: now optional in CreateNoteRequest per actual API behavior Assisted-by: Claude Sonnet 4 via Crush
Amolith created
26d3a71
refactor(lunatask): use Date type for PerformedOn
Aligns with ScheduledOn/DateOn pattern used elsewhere in the client. Assisted-by: Claude Sonnet 4 via Crush
Amolith created
d5769f3
chore(licensing): add for crush config
Amolith created
2bc6166
feat(lunatask): add People and Timeline APIs
People API: ListPeople, GetPerson, CreatePerson, DeletePerson PersonTimelineNote API: CreatePersonTimelineNote Assisted-by: Claude Sonnet 4 via Crush
Amolith created
c44428d
feat(lunatask): add notes CRUD operations
Implements Note types and Client methods: - ListNotes with optional source/source_id filters - CreateNote (returns nil on 204 for duplicates) - UpdateNote - DeleteNote Assisted-by: Claude Sonnet 4 via Crush
Amolith created
31855af
refactor(lunatask): idiomatic client API
- doRequest returns status code; 204 is valid success - Add generic doJSON[T] to reduce boilerplate - Ping now returns *PingResponse with message - Add Date type for date-only fields (YYYY-MM-DD) - Task uses time.Time/Date instead of strings - Add WithHTTPClient/WithBaseURL functional options - Make Client fields private for encapsulation Assisted-by: Claude Sonnet 4 via Crush
Amolith created
843183a
docs: add API docs reference, remove Contributing
Assisted-by: Claude Sonnet 4 via Crush
Amolith created
7e04c6f
refactor(lunatask): add Ping, extract shared code
- Move error types, APIError, and doRequest helper to client.go - Add Ping() method for token verification - Add ListTasksOptions with source_id filter support Assisted-by: Claude Sonnet 4 via Crush
Amolith created
a156f97
refactor(lunatask): genericize task API client
- Add typed errors (ErrNotFound, ErrUnauthorized, etc.) with APIError wrapper - Use pointer types for nullable Task fields; add Name/Note for future E2EE support - Add source_id to CreateTaskRequest for duplicate detection - Create separate UpdateTaskRequest with all-optional fields - Unify response types to return full Task object - Add ListTasks and GetTask methods - Move MCP-specific validation (name length, RFC3339, enums) to tools layer - Remove validator dependency from client package Assisted-by: Claude Sonnet 4 via Crush
Amolith created
635b5e8
chore(gopls): enable gofumpt, analyses, and hints
Assisted-by: Claude Sonnet 4 via Crush
Amolith created
22cf801
docs(agents): condense and restructure guidelines
Simplify AGENTS.md from 158 to 60 lines while preserving essential information. Focus on actionable guidance rather than implementation details. Add SPDX headers for REUSE compliance. Assisted-by: Claude Opus 4.5 via Crush
Amolith created
15aede7
docs(collab): fix pr.pico.sh ls cmd
Amolith created
eb73805
feat(docs): add llm-oriented intro
Amolith created
dfb2c4b
docs(readme): update collaboration guidelines
Update repository project name from 'lunatask-mcp-server' to 'llm-projects' in the `pr.pico.sh` examples and links. Removed alternative contribution methods (SourceHut, Radicle) to simplify the collaboration guidelines, focusing solely on using `pr.pico.sh` for patch requests.
Amolith created
4c27188
feat: add crush.json
Amolith created
76dc08a
Document available MCP tools in README
Added a comprehensive list of all available tools with their parameters and descriptions to the README.md file. - Documented get_timestamp tool - Documented list_areas_and_goals tool - Documented create_task tool with all parameters - Documented update_task tool with all parameters - Documented delete_task tool - Documented list_habits_and_activities tool - Documented track_habit_activity tool This makes it easier for users to understand what tools are available and how to use them. Co-Authored-By: Crush <crush@charm.land>
Amolith and Crush created
5889508
feat: allow task updates without area_id change
Co-Authored-By: Crush <crush@charm.land>
Amolith and Crush created
1388207
docs: refine prompt
Amolith created
cdfec83
feat: add Eisenhower Matrix field to task creation and updates
Add support for Eisenhower Matrix quadrant classification in both create_task and update_task operations. The field accepts human-readable values that are translated to API integers: - uncategorised (0) - clears the field - both urgent and important (1) - urgent, but not important (2) - important, but not urgent (3) - neither urgent nor important (4) Includes proper validation and helpful error messages following the existing priority field pattern.
Amolith created
efdf9eb
fix: resolve validation discrepancies between create_task and update_task
- Standardize estimate max value to 720 minutes (12 hours) across both tools - Fix incorrect tool name references from get_task_timestamp to get_timestamp
Amolith created
969cacf
feat: enhance MCP tool descriptions with comprehensive usage guidelines
- Add detailed workflow instructions for all tools with proper sequencing - Document enum constraints and parameter limits in natural language - Include system prompt requirements for task creation workflow - Clarify when to include optional parameters vs when to omit them - Add speech-to-text interpretation guidance for better user experience
Amolith created
8d76de9
docs: link to lunatask
Amolith created
b1387ff
docs: swap shields.io badge for reuse.software badge
Amolith created
1ec395d
docs: add badges
Amolith created
e504fc1
docs(collab): remove unused section
Amolith created
cdec68d
docs(collab): move section up, mention list
Amolith created
3c40fb7
docs: add contributions section
Amolith created
555271c
docs: remove priority rules from readme
Amolith created
1bf9a24
chore(justfile): fix gofumpt command input
Change gofumpt command in justfile to use '.' instead of './...' to format the root directory and not only children directories.
Amolith created
736d411
fix(config): Correct multiple to singular terms in TOML config
The TOML configuration keys `goals` and `areas` were incorrectly pluralized. This commit renames them to the singular `goal` and `area` respectively to align with the TOML parser's expectation for arrays of a single type.
Amolith created
8d481aa
chore: Update justfile to use go modules and build cmd
Amolith created
c25ef0c
fix: Remove duplicate handler methods
Amolith created
230872f
refactor: Remove unused import and add newline
Amolith created
dfadd27
refactor: Remove unused handlers file
Amolith created
3c552c7
refactor: Move general tools code from handlers.go to tools.go
Amolith created
e1c3848
refactor: Split tools handlers into separate files
Amolith created
9830322
refactor: Split main.go into cmd/main.go and tools/handlers.go
Amolith created
bdda7df
refactor: change task priority to string enum in task update tool
Updates the task priority argument to accept string values ("lowest", "low",
"neutral", "high", "highest") instead of a number range (-2 to 2). This improves
clarity and user experience. The internal representation remains an integer.
Amolith created
e034862
docs: update note
Amolith created
5c6045f
docs: correct git command
Amolith created
d3b1408
docs: update collaboration instructions
Improve the explanation of the patch request workflow and add a link to the pico.sh patch request homepage for further details.
Amolith created
a904ece
docs: improve pr section
Amolith created