Skip to main content

Run prompts against LLMs hosted by Moonshot

Project description

zopyx.llm-moonshot

LLM plugin for Moonshot AI's models

PyPI Changelog License

LLM plugin for models hosted by Moonshot AI.

Project Status

This package is maintained as the zopyx.llm-moonshot fork of the original llm-moonshot project.

The fork keeps the plugin usable in current environments and aligns packaging, CI/CD, and release workflow with the zopyx distribution. The post-fork changes and the reasons for them are documented in CHANGELOG.md.

Installation

First, install the LLM command-line utility.

Now install this plugin in the same environment as LLM:

llm install zopyx.llm-moonshot

Configuration

You'll need an API key from Moonshot. Grab one at platform.moonshot.cn.

Set secret key:

llm keys set moonshot
Enter key: <paste key here>

Usage

List what's on the menu:

llm models list

You'll see something like:

[[[cog
import cog
from llm_moonshot._models import DEFAULT_MOONSHOT_MODEL_IDS
for model_id in DEFAULT_MOONSHOT_MODEL_IDS:
    cog.outl(f"Moonshot: moonshot/{model_id}")
]]]
Moonshot: moonshot/kimi-latest
Moonshot: moonshot/moonshot-v1-auto
Moonshot: moonshot/moonshot-v1-128k-vision-preview
Moonshot: moonshot/kimi-k2-0711-preview
Moonshot: moonshot/moonshot-v1-128k
Moonshot: moonshot/moonshot-v1-32k-vision-preview
Moonshot: moonshot/moonshot-v1-8k-vision-preview
Moonshot: moonshot/moonshot-v1-8k
Moonshot: moonshot/kimi-thinking-preview
Moonshot: moonshot/moonshot-v1-32k
Moonshot: moonshot/kimi-k2-thinking
[[[end]]]

Fire up a chat:

llm chat -m moonshot/kimi-k2-0711-preview
Chatting with  moonshot/kimi-k2-0711-preview
Type 'exit' or 'quit' to exit
Type '!multi' to enter multiple lines, then '!end' to finish
> yo moonie
yo! what's up, moonie?
>

Need raw completion?

llm -m moonshot/moonshot-v1-8k "Finish this haiku: Neon city rain"
Neon city rain,
Glistening streets, a symphony,
Echoes of the night.

Reasoning Content Support

This plugin now supports reasoning content for Moonshot's thinking models (models with "thinking" in the name). When using thinking models, you'll see the model's reasoning process displayed in real-time before the final response:

llm chat -m moonshot/kimi-k2-thinking
[Reasoning] (shown in cyan dim)

The user is asking me to solve a complex problem. Let me think through this step by step...
First, I need to understand the core requirements...
Then I'll analyze the available options...

[Response] (shown in bold green)

Here's my well-reasoned answer to your question...

Available Thinking Models

  • moonshot/kimi-k2-thinking - Latest reasoning model
  • moonshot/kimi-thinking-preview - Preview reasoning model

The reasoning content helps you understand:

  • Decision-making process - See how the model analyzes problems
  • Multi-step reasoning - Follow complex thought chains
  • Error detection - Catch logical gaps or misunderstandings early

Aliases

Save your wrists:

llm aliases set kimi moonshot/kimi-latest

Now:

llm -m kimi "write a haiku about the AI chatbot Sidney is misbehaving"

Troubleshooting

Models don't appear in llm models list

  • Make sure you have set a Moonshot API key with llm keys set moonshot.
  • The plugin caches the model catalog for one hour. If the API was unreachable, it falls back to a built-in catalog.

Streaming connection dropped

  • The plugin automatically retries without streaming when Moonshot closes the connection mid-stream. This is a known upstream behavior and is handled transparently.

401 Unauthorized

Development

Clone, sync, build:

git clone https://github.com/zopyx/llm-moonshot.git
cd llm-moonshot
uv sync --extra dev
make check
make dist

To publish using .pypirc with twine:

make upload

See CONTRIBUTING.md for more details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

zopyx_llm_moonshot-0.3.5.tar.gz (14.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

zopyx_llm_moonshot-0.3.5-py3-none-any.whl (11.7 kB view details)

Uploaded Python 3

File details

Details for the file zopyx_llm_moonshot-0.3.5.tar.gz.

File metadata

  • Download URL: zopyx_llm_moonshot-0.3.5.tar.gz
  • Upload date:
  • Size: 14.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for zopyx_llm_moonshot-0.3.5.tar.gz
Algorithm Hash digest
SHA256 a4aef1f647fbe05f291a84af62d8079aef2e637258cae1286df3a3841be63a5b
MD5 3d95ede9be383f05bab02554a455dd35
BLAKE2b-256 6823076a21a42a48c0a5ac13a209aacced8e42808d5ff08d355281991a220893

See more details on using hashes here.

File details

Details for the file zopyx_llm_moonshot-0.3.5-py3-none-any.whl.

File metadata

File hashes

Hashes for zopyx_llm_moonshot-0.3.5-py3-none-any.whl
Algorithm Hash digest
SHA256 e52ed2b7c68be578fd7da88ea5053af71b0036f5ef91b750c5a81f3637865460
MD5 cfb3e194f368bb2daaf90c0ef7eaefe3
BLAKE2b-256 d45b5c38ddf867a915e2b054463aed970878bdde44e5b343e0b227f0092224e0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page