Важный
Клод, похоже, заблокировал весь небраузерный трафик к своему внутреннему API, что фактически сделало этот проект бесполезным. Если у вас есть решение/метод обойти это, пожалуйста, PR . Извините – @Explosion-Scratch
Это облегченная (изоморфная, зависимость 0) библиотека JavaScript для взаимодействия с неофициальным внутренним API чат-бота Claude AI. Установка CLI, установка API + использование
Псст. Он также может кодировать полные проекты и выводить действительный JSON.
Начать новые разговоры
? Загрузить файлы
? Модульные тесты включены с 85%-ным покрытием кода и 100%-ным процентом прохождения!
? Изоморфный (предположим, вы настроили прокси, меня это расстраивает)
Готовность к использованию Async/await с современным синтаксисом
? Получайте и отвечайте на существующие разговоры
Предстоящие
setActiveModel
, список доступных моделей, отправка сообщения непосредственно в существующий разговор ? Поддерживает все модели claude ( claude-2
, claude-1.3
, claude-instant-100k
— см. флаг --model
)
npm install claude-ai
npm install -g claude-cli
Примечание. Запустите
claude --help
или посмотрите CLI_DOCS.md для получения дополнительной информации о CLI.
Сначала импортируйте библиотеку:
const Claude = require ( 'claude-ai' ) ;
Инициализируйте новый экземпляр Claude с помощью вашего сеансового ключа:
Примечание. Получите
sessionKey
из файла cookiesessionKey
через веб-сайт Claude.
const claude = new Claude ( {
sessionKey : 'YOUR_SESSION_KEY'
} ) ;
Начните разговор, вызвав startConversation()
с подсказкой (или получите существующие разговоры через .getConversations()
):
const conversation = await claude . startConversation ( 'Hello Claude!' ) ;
Экземпляр Conversation
предоставляет такие методы, как sendMessage()
для продолжения чата:
await conversation . sendMessage ( 'How are you today?' ) ;
Полный код будет выглядеть так:
const Claude = require ( 'claude-ai' ) ;
const claude = new Claude ( {
sessionKey : 'YOUR_SESSION_KEY'
} ) ;
await claude . init ( ) ;
const conversation = await claude . startConversation ( 'Hello Claude!' ) ;
await conversation . sendMessage ( 'How are you today?' ) ;
Полный справочник по API см. в документации ниже.
Claude
Основной класс для взаимодействия с API Claude.
Конструктор:
const claude_instance = new Claude ( {
sessionKey : string ,
proxy : string | ( { endpoint , options } ) => ( { endpoint , options } )
} )
claude.request
(дополнительную информацию см. в исходном коде).proxy
представляет собой строку, она просто будет добавлена перед конечной точкой API, например: https://claude.ai/
Параметры:
sessionKey
— ваш файл cookie sessionKey
Клода.Методы (в экземпляре):
startConversation(prompt)
— начинает новый разговор с заданным сообщением-подсказкой.getConversations()
— получает последние разговорыclearConversations()
— Очистить все разговоры.uploadFile(file)
— загружает файл.Conversation
Возвращается Claude.startConversation()
.
Методы:
sendMessage(message, options)
— отправляет последующее сообщение в разговоре.getInfo()
— получает разговор (включая сообщения, имя, созданный_at, update_at и т. д.)delete()
— удалить разговор (возвращает ответ)Параметры отправки сообщения:
timezone
- Часовой пояс для завершенияattachments
— Массив вложенных файлов.model
- используемая модель Claude (по умолчанию: claude-2
, другие известные мне модели включают claude-1.3
и claude-instant-100k
. Кажется, также принимает claude-1
, но преобразует его в claude-1.3
)done
— Обратный вызов после завершенияprogress
— обратный вызов прогресса Вклады приветствуются! Эта библиотека была создана @Explosion-Scratch на GitHub. Пожалуйста, отправьте PR, чтобы помочь улучшить его.