Skip to main content

Mylo

An agent build with Langchain and Textual for Github and Gitlab repo analysis.

About Mylo

The main goal of Mylo is not to be another coding agent, but an agent that help you to find and analyse code made by other developers in a more easier and simple way. This will allow you to find repos and libraries that may fix your current problem or may suitable for your current or future projects :)

Installation

Mylo requires python version >= 3.9. Install it via pip as follows,

pip install mylo-agent

To run,

mylo

Main Features

  • Supports models from providers such as OpenAI, Anthropic, Google, Groq and Hugginface via standard API keys. It also supports local models hosted using Ollama (run the model using ollama, keep it active and type the model name that is running in the model profile config window's "Model Name" input box). The api keys are stored in ~/mylo-config/.env

  • Allow you to rewrite and modify the system prompt of the agent (the system prompt can be found in ~/mylo-config/SYSTEM_PROMPT.md )

  • Allow you to create model profiles and specify the memory limit for each profile.

  • Each model profile shares the same memory (or context). Therefore you can switch between multiple model with different memory limit in the same session.

  • The TUI displays the total token usage for each query and the total cumulative token (which is the total token usage by that model profile in one session). The token counting is seperate for each model profile that you use.

  • Allow you to execute inline local stateless commands in \cmd {command} format, without closing the tui.

  • Allows you to add github and gitlab tokens for more api requests by the agent. (The tokens are stored in ~/mylo-config/.env)

Model Profile

Model Profile is a compact way of storing the model name, provider name, api key and memory limit. You can add name for each model profile allowing you to quick load the model that you wanted. Model profiles allow you to change the memory limit of each model that you use, giving more control over your token usage

what is memory limit?

memory limit is the the maximum number of tokens passed to the LLM as conversation history. The TUI utilizes LangChain's trim_messages to dynamically trim older history, ensuring the context never exceeds this limit. This trimming process never affects your system prompt.

Agent Functionalities

  • Mylo can find names of repos from github and gitlab based on your specific needs

  • Mylo can find names of language specific libraries from their official registry and their corresponding repo names based on your needs. (Currently it will not support lua since LuaRock doesnt expose user friendly search api. And for c and cpp, agent uses github search api, because these languages dont have a centralised registry and search api)

  • It can show the file structure of a repository (This also work for repositories of libraries)

  • It can fetch / retrieve any files from a repository such as readme.md (you can ask it to retrive a file by specifying the path of the file in the repo (folder/file format). if it is not inside any folder, then just specify only the filename ).

  • Mylo can also analyse the fetched files

  • Mylo can analyse a file more deeply by using the AST of the file (The agent currently supports 16 languages.)

  • Mylo can also write the retrieved files into disk (should provide the path to which the file is to be saved).

languages supported by the agent: Python, Javascript, Typescript, Lua, Rust, Kotlin, Swift, Dart, C, C++, C#, Java, Go, Scala, Ruby and Php

Contributions

Contributions are highly welcome! Whether you are fixing a bug, optimizing performance, or adding a new tool to the agent, your help makes Mylo better.

For major architectural adjustments or feature requests, feel free to open an issue first to discuss what you would like to change.

Metadata

Release files for mylo-agent 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mylo-agent 1.0.0
File Size Uploaded
mylo_agent-1.0.0.tar.gz 45.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for mylo-agent 1.0.0
File Interpreter ABI Platform
mylo_agent-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 90.9 kB

Release files / mylo_agent-1.0.0.tar.gz

Download URL mylo_agent-1.0.0.tar.gz
Size 45.9 kB
Tags Source
SHA-256 checksum
How to use checksums
87f53a07461d2a8f5ce1907a71ac5be407739039f9e179c102d3d5e8e01edf2c
BLAKE2b-256 checksum
How to use checksums
486d2cae97bb63975031d964afe002136881e527050f53abd58b1f4fa69b4b86
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.2

Release files / mylo_agent-1.0.0-py3-none-any.whl

Download URL mylo_agent-1.0.0-py3-none-any.whl
Size 45.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ef33ce64723a3339beb59245777b91a2dd32aa411f4ffce9909069ca361aa76c
BLAKE2b-256 checksum
How to use checksums
34013b416187f987f0d64137298baaebe0ed7fa9ae5d1e53b8d58a8d5faed9d6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.2

Release history Release notifications | RSS feed

1.0.7

2 release files

1.0.6

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

This release

1.0.0 This release

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page