跳到正文
cccskills
免费在 GitHub 公开

external-memory-plugin

Develop, adapt, review, test, and troubleshoot Nexent external memory provider plugins, including plugin.yaml manifests, searchable and ingestible provider protocols, error mapping, network-isolated unit tests, deployment configuration, and Mem0-based examples. Use when adding a new external memory vendor, changing an existing memory plugin, validating partner adapters, or diagnosing plugin discovery, authentication, retrieval, ingestion, or CI failures.

中文简介正在准备中。当前显示原文说明。

查看安装方法

包含的文件(4)

  • SKILL.md4.6 KB
  • agents/openai.yaml233 B
  • references/mem0-example.md1.9 KB
  • references/plugin-contract.md3.7 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

External Memory Plugin

Develop external memory adapters against the current Nexent contract and prove them without live-service CI dependencies.

Establish scope

  1. Read the repository AGENTS.md and invoke its SPEC workflow for production behavior changes.
  2. Inspect, rather than assume, these current contracts:
    • sdk/nexent/memory/providers/base.py
    • sdk/nexent/memory/models.py
    • backend/services/memory_provider_plugin_loader.py
    • backend/services/memory_external_provider_service.py
  3. Read references/plugin-contract.md before creating or reviewing a manifest or provider.
  4. Read references/mem0-example.md when implementing HTTP transport, error mapping, or tests.
  5. Preserve tenant, user, Agent, and conversation scope. Never print or persist credentials.

Implement the adapter

  1. Create <plugin-dir>/<name>/plugin.yaml and provider.py.
  2. Declare only implemented capabilities in implements.
  3. Make protocol methods asynchronous and return the exact Nexent models.
  4. Honor provider-level timeout_seconds and result limits.
  5. Map remote failures to ProviderError and the retry exception matching recovery semantics.
  6. Keep OTel attributes low-cardinality and free of queries, memory content, user identifiers, tenant identifiers, and secrets. Rely on the orchestration service's standard instrumentation unless provider-specific spans add actionable detail.
  7. Treat the deployment search/ingest switches as kill switches and the provider enabled field as the instance switch; do not bypass them in normal runtime paths.

Test without external dependencies

  1. Test manifest discovery and protocol validation with a temporary plugin directory.
  2. Mock the network at the HTTP client transport boundary; for httpx, use MockTransport.
  3. Cover successful, empty, partial, malformed, unauthorized, forbidden, rate-limited, timeout, connection, and server-error responses as applicable.
  4. Assert request scope and authentication shape without using real credentials.
  5. Assert every ingest unit receives a result and retry classification is correct.
  6. Run the narrow plugin and loader suites first, then affected service and integration suites.
  7. Reach at least 90% coverage for each new or modified module.

Do not let a test silently reach the internet. Real-provider tests require explicit authorization and must remain separate from CI unit tests.

Verify installation and runtime

  1. Keep partner code outside the Nexent Git worktree and image. Locate the deployment's nexent-data root, then copy the plugin to its memory-provider-plugins/<plugin-name> child.
  2. For Docker, resolve ROOT_DIR from the deployment argument or deploy/env/.env (default $HOME/nexent-data). For Kubernetes local storage, read global.sharedStorage.memoryPlugins.localPath; for other storage classes, inspect the nexent-memory-plugins PVC. Do not redefine the established in-container path /mnt/nexent-data/memory-provider-plugins.
  3. Restart both services, then confirm discovery through GET /memory/provider-plugins or the Memory Management UI.
  4. Create a disabled provider configuration and run test search and ingest.
  5. Enable the provider and the required deployment kill switch only after connectivity succeeds.
  6. Use unique internal and external memory markers in an Agent conversation.
  7. Inspect nexent.memory.external_provider spans and standard metrics for operation, provider, outcome, error code, latency, and result/unit counts.
  8. Record sanitized evidence. Do not call the feature complete when real-runtime or required telemetry evidence is unavailable; mark that verification blocked.

Review checklist

  • Manifest fields and class name match the files.
  • config_schema marks secrets and required fields correctly.
  • Search results set source and is_external=True.
  • Ingest handles idempotency and partial acceptance.
  • Error types match retry behavior.
  • Logs, exceptions, metrics, and spans contain no sensitive payloads.
  • Unit tests are deterministic and network-isolated.
  • Deployment and user documentation name both switch levels.

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Use when designing, implementing, debugging, or reviewing Nexent relational schemas, FastAPI endpoints, backend services, database access, SQL migrations, or backend/SDK configuration. Includes table/field naming, types, JSONB boundaries, audit fields, keys, and indexes even before code paths exist. Skip frontend-only work and unrelated SDK algorithms.

中文简介正在准备中。当前显示原文说明。

ModelEngine-Group/nexent59842026年10月19日 更新

在 Ubuntu 自托管测试机上编排 Nexent 每日分层全量测试、维护本地测试基线和 P0 Playwright 候选代码,并将证据仅保存在本机。用于 OpenCode 执行 Daily/手工全量测试;不用于 PR 测试或外部结果发布。

中文简介正在准备中。当前显示原文说明。

ModelEngine-Group/nexent59842026年10月19日 更新

Use when implementing, debugging, or reviewing Nexent frontend pages, React components, hooks, API services, TypeScript types, styling, or localization under frontend/. Includes UI requests without file paths. Skip backend-only work, Python tests, and documentation-only changes with no frontend behavior.

中文简介正在准备中。当前显示原文说明。

ModelEngine-Group/nexent59842026年10月19日 更新

Implement and maintain Nexent's traditional Python UT for product changes and bugfixes under test/backend, test/sdk, and test/ext_components. Cover unit behavior, boundaries, errors and regression assertions with isolated pytest tests. Formal D1-D5 assets in test-e2e use nexent-test-assets.

中文简介正在准备中。当前显示原文说明。

ModelEngine-Group/nexent59842026年10月19日 更新

Run Nexent requirements and bugfixes through SPEC acceptance, traditional UT and applicable D1-D5 test design, product/test implementation, local verification, and delivery evidence. Use for features, fixes, refactors and post-development test backfill across APIs, UI, model and Agent behavior.

中文简介正在准备中。当前显示原文说明。

ModelEngine-Group/nexent59842026年10月19日 更新

Create and maintain Nexent's repository-owned feature catalog, D1-D5 case-local contracts and fixed scripts, change records, generated execution registry and Excel view. Use for requirements, bug regressions, post-development test backfill, test implementation, and formal asset migration. Traditional UT uses nexent-python-tests.

中文简介正在准备中。当前显示原文说明。

ModelEngine-Group/nexent59842026年10月19日 更新

查看 ModelEngine-Group 的全部技能

报告此技能的问题