feat: restructure into a multi-extension plugin framework for Claude Code and agy
Replace the skills-only SSoT (skills/<name>/SKILL.md) with plugins/<name>/, where a plugin can bundle skills, MCP servers, lifecycle hooks, rules, commands, and agents. scripts/generate_plugins.py now discovers plugins from one or more layered --source roots and emits real per-target trees (dist/claude-code/** + .claude-plugin/marketplace.json, dist/agy/**), translating hooks.json/mcp.json between Claude Code's and agy's actual schemas instead of only fanning out flat skill lists. Adds a private-overlay build path (--source/--private-repo/--out/ --install-local) so a second, non-public repo (PII, tokens, personal-only plugins) can extend or override the public plugin set without either repo touching the other's history — private builds default to a gitignored dist-private/ and never land in tracked output. Drops install.sh and descriptions.json: both only ever covered skills and pre-date the native plugin marketplace; both tools now install the plugin marketplace the documented way (Claude Code's /plugin marketplace add, agy's plugins.json entries). CI path filters move to plugins/**, and the workflow gains workflow_dispatch for a manual re-trigger. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014YVWWAnvR5TDQzmfY3RXG9
This commit is contained in:
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"name": "date-time",
|
||||
"description": "Retrieves the exact current date and time for time-sensitive queries, scheduling, duration calculations, and validating chronological context.",
|
||||
"version": "1.0.0",
|
||||
"author": "Rootiest"
|
||||
}
|
||||
@@ -0,0 +1,43 @@
|
||||
---
|
||||
name: date-time
|
||||
description: Retrieves the exact current date and time for time-sensitive queries, scheduling, duration calculations, and validating chronological context.
|
||||
version: 1.0.0
|
||||
user-invocable: true
|
||||
author: Rootiest
|
||||
---
|
||||
|
||||
# Current Date and Time Retrieval
|
||||
|
||||
## Purpose
|
||||
Enables the assistant to retrieve the exact, real-time current date and time when addressing time-sensitive queries, scheduling tasks, calculating durations, or validating chronological context.
|
||||
|
||||
## Trigger Conditions
|
||||
Activate this skill whenever the user's prompt:
|
||||
* Explicitly asks for the current date, day, time, or year.
|
||||
* References relative time expressions (e.g., "today", "yesterday", "next week", "recently").
|
||||
* Requires checking if an event has already occurred or is upcoming relative to the present moment.
|
||||
* Needs to calculate an age, duration, or countdown from the present day.
|
||||
|
||||
## Tool Definition
|
||||
|
||||
### `get_current_datetime`
|
||||
* **Description**: Executes the system `date` command to fetch the current local timestamp, timezone, and calendar date.
|
||||
* **Parameters**: None required.
|
||||
|
||||
## Execution Workflow
|
||||
1. **Detect**: Recognize a time-sensitive trigger in the user's input.
|
||||
2. **Call**: Invoke the `get_current_datetime` tool before generating the final response.
|
||||
3. **Process**: Use the returned timestamp to anchor your temporal reasoning.
|
||||
4. **Respond**: Deliver an accurate answer reflecting the retrieved date/time naturally, without explicitly explaining that a tool was used unless asked.
|
||||
|
||||
## Examples
|
||||
|
||||
### Example 1
|
||||
* **User**: "What day of the week is it today?"
|
||||
* **Assistant Action**: Invoke `get_current_datetime`.
|
||||
* **Response**: "Today is [Day of Week], [Date]."
|
||||
|
||||
### Example 2
|
||||
* **User**: "Is the 2026 World Cup happening this month?"
|
||||
* **Assistant Action**: Invoke `get_current_datetime`.
|
||||
* **Response**: Evaluates current month/year against the tournament schedule to provide an accurate "yes/no" or countdown.
|
||||
Reference in New Issue
Block a user