Skip to content

Исправить авторизацию user API key в composio-direct#199

Merged
xlabtg merged 3 commits into
xlabtg:mainfrom
konard:issue-198-f91fe1fbd5d0
Jun 21, 2026
Merged

Исправить авторизацию user API key в composio-direct#199
xlabtg merged 3 commits into
xlabtg:mainfrom
konard:issue-198-f91fe1fbd5d0

Conversation

@konard

@konard konard commented Jun 21, 2026

Copy link
Copy Markdown

Что исправлено

Fixes #198.

composio-direct всегда отправлял composio_api_key в заголовке x-api-key. По OpenAPI Composio v3.1 большинство рабочих endpoints принимают и project key (x-api-key), и user key (x-user-api-key). Если оператор вставлял user/full-access key из настроек Composio, API мог отвечать 401/403, хотя сам ключ был валидным.

Решение

  • Добавлен режим api_key_auth_scheme со значением по умолчанию auto.
  • В auto plugin сначала сохраняет прежнее поведение через x-api-key, а при 401/403 на endpoints с поддержкой user key повторяет запрос через x-user-api-key.
  • Для явного режима можно указать project или user.
  • Files/Webhooks endpoints, которые в OpenAPI требуют project key, не получают auto-fallback на user header.
  • 401/403 по-прежнему не превращаются в auth_required; ошибки остаются ошибками API key/permissions.
  • Версия composio-direct поднята до 1.9.3, README/GUIDE обновлены.

Как воспроизвести

До исправления запрос composio_execute_tool с user API key уходил только с x-api-key и на 403 завершался ошибкой. Новый регрессионный тест имитирует этот ответ Composio и проверяет повторный успешный запрос с x-user-api-key.

Проверка

  • node --test plugins/composio-direct/tests/index.test.js plugins/composio-direct/test/unit/composio-direct.test.js plugins/composio-direct/test/integration/composio-api.test.js
  • npm run validate
  • node scripts/build-sdk.mjs
  • npm run lint (0 errors, существующие 32 warnings вне этого исправления)
  • npm run typecheck
  • npm test

@konard konard changed the title [WIP] The composio direct plugin does not work Исправить авторизацию user API key в composio-direct Jun 21, 2026
@konard konard marked this pull request as ready for review June 21, 2026 21:32
@konard

konard commented Jun 21, 2026

Copy link
Copy Markdown
Author

Working session summary

Готово: PR #199 обновлён и переведён в ready for review: #199

Исправление: composio-direct теперь поддерживает Composio user API keys через x-user-api-key. По умолчанию добавлен api_key_auth_scheme: "auto": сначала используется прежний x-api-key, а при 401/403 для поддерживаемых endpoints запрос повторяется с x-user-api-key. Версия плагина поднята до 1.9.3, README/GUIDE обновлены, добавлены регрессионные тесты на fallback и явный user-режим.

Проверки локально:

  • node --test plugins/composio-direct/tests/index.test.js plugins/composio-direct/test/unit/composio-direct.test.js plugins/composio-direct/test/integration/composio-api.test.js passed
  • npm run validate passed
  • node scripts/build-sdk.mjs passed
  • npm run lint passed, 0 errors, 32 existing warnings вне этого изменения
  • npm run typecheck passed
  • npm test passed, 492 tests

GitHub Actions: для текущего head aeb17ff2b3eb0282f8eedce1934e4cdc95153744 GitHub пока не создал check suites/statuses (no checks reported). В списке runs видны только старые успешные PR-runs на первоначальном SHA 46d76b4, поэтому удалённый CI для нового head не удалось подтвердить. Рабочее дерево чистое, PR mergeable.


This summary was automatically extracted from the AI working session output.

@konard

konard commented Jun 21, 2026

Copy link
Copy Markdown
Author

🤖 Solution Draft Log

This log file contains the complete execution trace of the AI solution draft process.

💰 Cost estimation:

  • Model: GPT-5.5
  • Provider: OpenAI
  • Public pricing estimate: $15.145061

📊 Context and tokens usage:

  • 486.2K / 200K (243%) input tokens, 40.4K / 128K (32%) output tokens

Total: (486.2K + 8.5M cached) input tokens, 40.4K output tokens, $15.145061 cost

🤖 Models used:

  • Tool: OpenAI Codex
  • Requested: gpt-5.5
  • Thinking level: max (~31999 tokens)
  • Model: GPT-5.5 (gpt-5.5)

📎 Log file uploaded as Repository (48781KB)


Now working session is ended, feel free to review and add any feedback on the solution draft.

@xlabtg xlabtg merged commit 43d3ebd into xlabtg:main Jun 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

The composio direct plugin does not work

2 participants