AgentSkillsCN

mojo-build-package

构建 Mojo 软件包(.mojopkg 文件),用于分发。适用于创建可分发的库,或在打包阶段使用。

SKILL.md
--- frontmatter
name: mojo-build-package
description: "Build Mojo packages (.mojopkg files) for distribution. Use when creating distributable libraries or during packaging phase."
mcp_fallback: none
category: mojo

Mojo Build Package Skill

Build compiled Mojo packages for distribution and reuse.

When to Use

  • Creating distributable libraries
  • Packaging phase of development
  • Preparing for package installation
  • Building modular components

Quick Reference

bash
# Build single package
mojo package scylla/tensor -o packages/tensor.mojopkg

# Build and test
./scripts/build_package.sh tensor --test

# Build all packages
./scripts/build_all_packages.sh

Workflow

  1. Verify structure - Check __init__.mojo exists
  2. Build package - Run mojo package or script
  3. Test imports - Verify package can be imported
  4. Verify exports - Check __all__ in __init__.mojo

Mojo-Specific Notes

  • Every package needs __init__.mojo entry point
  • Export public API in __all__ list
  • Packages compile to .mojopkg binary format
  • No circular dependencies allowed

Error Handling

ErrorCauseSolution
Missing __init__.mojoNo package entry pointAdd __init__.mojo to package dir
Circular dependencyModules depend on each otherRefactor to break cycle
Export not foundMissing from __all__Add name to __all__ list
Build failedSyntax errors in moduleFix syntax before building

References

  • .claude/shared/mojo-guidelines.md - Function definition patterns
  • Package metadata template: templates/package_toml.toml