Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 8 additions & 8 deletions plugins/everos-sdk-upgrade/skills/everos-sdk-upgrade/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ name: everos-sdk-upgrade
description: >
Migrate EverOS SDK between versions (Python only; Go/TS planned).
Auto-detects current version, chains rules to target. TRIGGER when: code
imports evermemos/everos, user mentions upgrade/migrate everos, or
imports evermemos/everos/everos_cloud, user mentions upgrade/migrate everos, or
dependencies contain outdated SDK version.
user-invocable: true
argument-hint: "[target-version, default: latest]"
Expand All @@ -20,13 +20,13 @@ Currently supports **Python only**. Go and TypeScript support is planned.
Search for EverOS SDK references across all supported languages:

```
Grep pattern="evermemos|everos" glob="*.py"
Grep pattern="evermemos|everos" glob="*.{go,mod}"
Grep pattern="evermemos|everos" glob="*.{ts,json}"
Grep pattern="evermemos|everos|everos.cloud|everos_cloud" glob="*.py"
Grep pattern="evermemos|everos|everos.cloud|everos_cloud" glob="*.{go,mod}"
Grep pattern="evermemos|everos|everos.cloud|everos_cloud" glob="*.{ts,json}"
```

Classify by which files contain SDK references (not just by file existence):
- **Python**: `evermemos` or `everos` found in `*.py`, `pyproject.toml`, `requirements.txt` → ✓ **supported**
- **Python**: `evermemos`, `everos`, or `everos_cloud` found in `*.py`, `pyproject.toml`, `requirements.txt` → ✓ **supported**
- **Go**: `evermemos` or `everos` found in `go.mod`, `*.go` → ✗ **not yet supported**
- **TypeScript**: `evermemos` or `everos` found in `package.json`, `*.ts` → ✗ **not yet supported**

Expand All @@ -46,12 +46,12 @@ Then proceed with Python migration if Python SDK usage is also detected.
Use Grep to search for SDK usage patterns:

```
Grep pattern="evermemos|everos" glob="*.{py,toml,txt}"
Grep pattern="evermemos|everos|everos_cloud" glob="*.{py,toml,txt}"
```

Determine version from the patterns found:
- `evermemos` + `client.v0.` = **v0**
- `everos` + `client.v1.` = **v1**
- `everos` or `everos_cloud` + `client.v1.` = **v1**
- Higher versions: `client.vN.` = **vN**

## Step 3: Determine target version
Expand Down Expand Up @@ -93,7 +93,7 @@ track which types are in use and need renaming.

After code changes, **tell the user** to update their installed package:

- `pip install everos>=<version>` or `uv sync`
- `pip install everos-cloud>=<version>` or `uv sync`

Do NOT auto-run install commands. The user decides when and how to update.

Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
"""
EverOS SDK v1 (everos) — canonical usage reference (15 scenarios).
EverOS SDK v1 (everos-cloud) — canonical usage reference (15 scenarios).
"""

import os
from datetime import datetime, timezone

from everos import EverOS, EverOSError
from everos.types.v1 import (
from everos_cloud import EverOS, EverOSError
from everos_cloud.types.v1 import (
AddResponse,
GetMemoriesResponse,
SearchMemoriesResponse,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
# Migration Rules: evermemos (v0) -> everos (v1)
# Migration Rules: evermemos (v0) -> everos-cloud (v1)

This file contains every breaking change between the two SDK versions.
Apply rules in the order listed.

## Contents

- RULE-001: Package Dependency (rename evermemos -> everos)
- RULE-001: Package Dependency (rename evermemos -> everos-cloud)
- RULE-002: Environment Variables (EVERMEMOS_API_KEY -> EVEROS_API_KEY)
- RULE-003: Import Statements (module + type renames)
- RULE-004: Client Class (EverMemOS -> EverOS)
Expand Down Expand Up @@ -39,19 +39,19 @@ evermemos==0.3.13
**After (v1):**
```
# pyproject.toml
dependencies = ["everos>=0.1.0"]
dependencies = ["everos-cloud>=0.1.0"]

# requirements.txt
everos>=0.1.0
everos==0.1.1
everos-cloud>=0.1.0
everos-cloud==0.1.1
```

### Search Patterns:
- `evermemos` in pyproject.toml, requirements*.txt, setup.py, setup.cfg, Pipfile

### Steps:
1. FIND: `evermemos` in dependency declarations
2. REPLACE: with `everos`
2. REPLACE: with `everos-cloud`
3. Update version constraints to `>=0.1.0`

---
Expand Down Expand Up @@ -104,11 +104,11 @@ from evermemos.types.v0.status import RequestGetResponse

**After (v1):**
```python
import everos
from everos import EverOS, AsyncEverOS
from everos import EverOSError
from everos.types.v1 import AddResponse, GetMemoriesResponse, SearchMemoriesResponse
from everos.types.v1 import (
import everos_cloud
from everos_cloud import EverOS, AsyncEverOS
from everos_cloud import EverOSError
from everos_cloud.types.v1 import AddResponse, GetMemoriesResponse, SearchMemoriesResponse
from everos_cloud.types.v1 import (
ContentItemParam, MessageItemParam, FlushResponse,
EpisodeItem, ProfileItem, RawMessageDto,
)
Expand All @@ -117,9 +117,9 @@ from everos.types.v1 import (
```

### Search Patterns (regex):
- `^import evermemos` -> `import everos`
- `^from evermemos` -> `from everos`
- `evermemos\.` -> `everos.`
- `^import evermemos` -> `import everos_cloud`
- `^from evermemos` -> `from everos_cloud`
- `evermemos\.` -> `everos_cloud.`
- `\.types\.v0` -> `.types.v1`
- `\.resources\.v0` -> `.resources.v1`

Expand All @@ -139,7 +139,7 @@ from everos.types.v1 import (
| `RequestGetResponse` | **REMOVED** | Use `GetTaskStatusResponse` for async tasks |

### Steps:
1. FIND all `import evermemos` / `from evermemos` and REPLACE with `everos`
1. FIND all `import evermemos` / `from evermemos` and REPLACE with `everos_cloud`
2. FIND `.types.v0` REPLACE `.types.v1`
3. FIND `.resources.v0` REPLACE `.resources.v1`
4. Rename type references per mapping table
Expand Down
Loading