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.3.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.3-py3-none-any.whl (11.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: zopyx_llm_moonshot-0.3.3.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.3.tar.gz
Algorithm Hash digest
SHA256 c351ae918e66d8d5cb62f9468bdedf4aaf03610ebe8927fb15be83a744cda4cf
MD5 dea731aa7ed078038787d2aefcb5320f
BLAKE2b-256 ab222778f5337fa2d808f2a33a6487b804148e6a020a41df023fa9e8b9a00deb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zopyx_llm_moonshot-0.3.3-py3-none-any.whl
Algorithm Hash digest
SHA256 3d41b2ca047e80611512696e07f09f87a83921567fdc4834ff79972aa82914d9
MD5 322fc552b0d2de545d372a29f17942f2
BLAKE2b-256 3d9369459056db467e026a7b21fa55d3c642ccffbc1cdc1721a3acf6fc8dc798

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