Skip to content

Commit f43c424

Browse files
author
elnora-bot
committed
Sync skills and version from elnora-cli v1.3.1
1 parent d6d34ac commit f43c424

5 files changed

Lines changed: 34 additions & 26 deletions

File tree

.claude-plugin/marketplace.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
"url": "https://elnora.ai"
77
},
88
"metadata": {
9-
"version": "1.3.0",
9+
"version": "1.3.1",
1010
"description": "AI-powered bioprotocol generation and lab workflow management plugins"
1111
},
1212
"plugins": [

elnora/.claude-plugin/plugin.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "elnora",
3-
"version": "1.3.0",
3+
"version": "1.3.1",
44
"description": "AI-powered bioprotocol generation and lab workflow management. Connect to the Elnora AI Platform to generate, optimize, and manage bioprotocols for wet-lab experiments.",
55
"author": {
66
"name": "Elnora AI",

elnora/skills/elnora-platform/SKILL.md

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,10 @@ $CLI projects list --compact # also works for most commands
3535
| `--profile <name>` | Named profile (default: `default`). Set with `auth login --api-key <KEY> --profile <name>` |
3636
| `--json` | Force JSON output |
3737

38+
## Updates
39+
40+
On first use in a session, run `elnora update` to check for updates. If an update is available, inform the user and offer to run `elnora update --install`.
41+
3842
## Auth
3943

4044
Requires `ELNORA_API_KEY` environment variable (prefix: `elnora_live_`), `ELNORA_MCP_API_KEY`, or a saved profile in `~/.elnora/profiles.toml`.
@@ -136,13 +140,15 @@ HTTP 429 on limit. Check the `Retry-After` header for seconds to wait.
136140

137141
Projects contain tasks and files. Typical flow:
138142

139-
1. `projects list` -> get project ID
143+
1. `--compact --fields "id,name" projects list` -> list projects, pick one by name
140144
2. `tasks create --project <ID> --message "..." --stream` -> create task and stream the agent response
141145
3. `tasks send <TASK_ID> --message "..." --stream` -> send follow-up and stream response
142146
4. `tasks messages <TASK_ID>` -> read conversation history (or use `--wait` instead of `--stream` in steps 2-3)
143147
5. `files list --project <ID>` -> browse generated outputs
144148
6. `files content <FILE_ID>` -> read a protocol file
145149

150+
**Project ID:** List projects once (step 1), pick the one matching the user's context, and reuse the ID for all subsequent commands. Don't re-list projects for every task.
151+
146152
See `elnora-tasks` skill for full response retrieval details (`--stream`, `--wait`, MCP behavior).
147153

148154
## All Command Groups
@@ -167,6 +173,6 @@ elnora projects Manage projects
167173
elnora search Search tasks, files, and file content
168174
elnora setup Configure AI coding tools (Claude Code, Cursor, VS Code, Codex)
169175
elnora tasks Manage tasks
170-
elnora update Self-update the CLI to the latest version
176+
elnora update Check for updates (use --install to apply)
171177
elnora whoami Show current profile and org
172178
```

elnora/skills/elnora-projects/SKILL.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -112,10 +112,12 @@ Removes the current user from the project.
112112

113113
## Agent Recipes
114114

115-
**Get the default project ID:**
115+
**List projects and pick one:**
116116

117117
```bash
118-
$CLI --compact --fields "id,name" projects list --page-size 5
118+
$CLI --compact --fields "id,name" projects list
119+
# Pick the project matching the user's context by name. If only one project, use it.
120+
# If multiple and unclear, ask the user which project to use.
119121
```
120122

121123
**Full project setup with members:**

elnora/skills/elnora-tasks/SKILL.md

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,17 @@ SSE event types:
4040

4141
**IMPORTANT — Always show the full response:** When Elnora returns a response (protocol, literature review, analysis, etc.), print the **entire** assistant content back to the user. No truncation, no summarization, no "here are the key points." The user asked Elnora to generate something — show them everything Elnora said, including comments, suggestions, warnings, and explanations. Strip JSON wrapper/metadata but preserve all human-readable content.
4242

43+
## Getting a Project ID
44+
45+
Every task belongs to a project. You need a project ID to create tasks. **Do this once per session, then reuse the ID.**
46+
47+
```bash
48+
# List the user's projects
49+
elnora --compact --fields "id,name" projects list
50+
```
51+
52+
Pick the project that best matches the user's request by name. If there's only one project, use it. If unsure, ask the user which project to use. **Remember the project ID** — don't re-list projects for every task command.
53+
4354
## Invocation
4455

4556
```bash
@@ -165,38 +176,27 @@ MCP tools accept the same parameters as CLI flags (camelCase). `elnora_tasks_sen
165176

166177
## Agent Recipes
167178

168-
**Create task and stream the response:**
179+
**Typical workflow (list projects → create task stream response):**
169180

170181
```bash
171-
PROJECT=$($CLI --compact --fields "id" projects list | jq -r '.items[0].id')
182+
# Step 1: Get the project ID (do this once, reuse for all commands)
183+
$CLI --compact --fields "id,name" projects list
184+
# Pick the project that matches the user's context. Example with one project:
185+
# PROJECT="bfdc6fbd-40ed-4042-9ea7-c79a5ec90085"
186+
187+
# Step 2: Create task and stream
172188
$CLI --compact tasks create --project "$PROJECT" --title "PCR BRCA1" --message "Generate PCR protocol for BRCA1 exon 11" --stream
173189
```
174190

175-
**Two-step (capture task ID, then stream follow-ups):**
191+
**Continue a conversation (reuse task ID):**
176192

177193
```bash
178-
TASK=$($CLI --compact tasks create --project "$PROJECT" --title "PCR BRCA1" | jq -r '.id')
179-
$CLI --compact tasks send "$TASK" --message "Generate PCR protocol for BRCA1 exon 11" --stream
180194
$CLI --compact tasks send "$TASK" --message "Add gel electrophoresis step" --stream
181-
```
182-
183-
**Get response as JSON (--wait):**
184-
185-
```bash
186-
$CLI --compact tasks send "$TASK" --message "Add gel electrophoresis step" --wait
195+
$CLI --compact tasks send "$TASK" --message "Reduce annealing temperature to 55C" --stream
187196
```
188197

189198
**Read conversation history:**
190199

191200
```bash
192201
$CLI --compact tasks messages <TASK_ID> | jq '.items[-1] | select(.role == "assistant") | .content'
193202
```
194-
195-
**Manual polling fallback (custom timeout):**
196-
197-
```bash
198-
LAST=$($CLI --compact tasks messages <TASK_ID> | jq '.items[-1]')
199-
echo "$LAST" | jq '{role: .role, status: (.metadata | fromjson? // {} | .status)}'
200-
# -> {"role":"assistant","status":"completed"} <- ready
201-
# -> {"role":"user","status":null} <- still processing
202-
```

0 commit comments

Comments
 (0)