jeevescli


Namejeevescli JSON
Version 0.1.0 PyPI version JSON
download
home_pagehttps://github.com/dadukhankevin/jeevescli
SummaryStateless, small context, high leverage AI assistant
upload_time2025-08-28 01:08:22
maintainerNone
docs_urlNone
authorDaniel Losey
requires_python>=3.8
licenseNone
keywords ai assistant cli developer tools
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ```
    ░█████ ░██████████ ░██████████ ░██    ░██ ░██████████   ░██████   
      ░██  ░██         ░██         ░██    ░██ ░██          ░██   ░██  
      ░██  ░██         ░██         ░██    ░██ ░██         ░██         
      ░██  ░█████████  ░█████████  ░██    ░██ ░█████████   ░████████  
░██   ░██  ░██         ░██          ░██  ░██  ░██                 ░██ 
░██   ░██  ░██         ░██           ░██░██   ░██          ░██   ░██  
 ░██████   ░██████████ ░██████████    ░███    ░██████████   ░██████   
```                                                              

# Jeeves
## About

Most coding assistants keep growing message histories and context windows, which is inefficient. Jeeves only keeps the latest message in context. This design focuses on the current task and relevant code, not the entire project history.

Despite this, Jeeves can still plan, manage TODO lists, and solve problems over multiple steps without needing conversation history.

Jeeves uses `pysublime` for code search and retrieval. It embeds code line by line and clusters results to return only the most relevant segments, reducing noise and missing content.

## Setup

```bash
git clone https://github.com/dadukhankevin/jeevescli
cd jeevescli
pip install -e .
```

Now `jeeves` is available globally from any directory.

## Usage
1. Set API key: `/api api_key sk-your-key-here`
2. Run `jeeves` from anywhere
3. Profit

### Configure API at runtime
Use the in-CLI `/api` command to view or change model/provider/base_url/api_key. Settings persist to `~/.config/jeevescli/config.json` and apply immediately.

Examples:

```text
/api                # show current settings and config file location
/api show           # same as above

/api model openai/gpt-oss-120b provider Groq
/api base_url https://api.example.com/openai/v1 api_key sk-xxxx

# You can also use key=value form
/api model=gpt-4o-mini provider=Cerebras

# Unset a value
/api provider unset
```

Notes:
- Values set via `/api` override environment variables and are remembered across runs.
- Env vars `API_KEY` and `BASE_URL` are used as defaults if nothing is persisted.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/dadukhankevin/jeevescli",
    "name": "jeevescli",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "ai, assistant, cli, developer, tools",
    "author": "Daniel Losey",
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/a3/ee/52d2ded43115659f02dd38cfe43526ff5832d61617c17764c3f20ba6a342/jeevescli-0.1.0.tar.gz",
    "platform": null,
    "description": "```\n    \u2591\u2588\u2588\u2588\u2588\u2588 \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2591\u2588\u2588    \u2591\u2588\u2588 \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588   \u2591\u2588\u2588\u2588\u2588\u2588\u2588   \n      \u2591\u2588\u2588  \u2591\u2588\u2588         \u2591\u2588\u2588         \u2591\u2588\u2588    \u2591\u2588\u2588 \u2591\u2588\u2588          \u2591\u2588\u2588   \u2591\u2588\u2588  \n      \u2591\u2588\u2588  \u2591\u2588\u2588         \u2591\u2588\u2588         \u2591\u2588\u2588    \u2591\u2588\u2588 \u2591\u2588\u2588         \u2591\u2588\u2588         \n      \u2591\u2588\u2588  \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588  \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588  \u2591\u2588\u2588    \u2591\u2588\u2588 \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588   \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588  \n\u2591\u2588\u2588   \u2591\u2588\u2588  \u2591\u2588\u2588         \u2591\u2588\u2588          \u2591\u2588\u2588  \u2591\u2588\u2588  \u2591\u2588\u2588                 \u2591\u2588\u2588 \n\u2591\u2588\u2588   \u2591\u2588\u2588  \u2591\u2588\u2588         \u2591\u2588\u2588           \u2591\u2588\u2588\u2591\u2588\u2588   \u2591\u2588\u2588          \u2591\u2588\u2588   \u2591\u2588\u2588  \n \u2591\u2588\u2588\u2588\u2588\u2588\u2588   \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588    \u2591\u2588\u2588\u2588    \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588   \u2591\u2588\u2588\u2588\u2588\u2588\u2588   \n```                                                              \n\n# Jeeves\n## About\n\nMost coding assistants keep growing message histories and context windows, which is inefficient. Jeeves only keeps the latest message in context. This design focuses on the current task and relevant code, not the entire project history.\n\nDespite this, Jeeves can still plan, manage TODO lists, and solve problems over multiple steps without needing conversation history.\n\nJeeves uses `pysublime` for code search and retrieval. It embeds code line by line and clusters results to return only the most relevant segments, reducing noise and missing content.\n\n## Setup\n\n```bash\ngit clone https://github.com/dadukhankevin/jeevescli\ncd jeevescli\npip install -e .\n```\n\nNow `jeeves` is available globally from any directory.\n\n## Usage\n1. Set API key: `/api api_key sk-your-key-here`\n2. Run `jeeves` from anywhere\n3. Profit\n\n### Configure API at runtime\nUse the in-CLI `/api` command to view or change model/provider/base_url/api_key. Settings persist to `~/.config/jeevescli/config.json` and apply immediately.\n\nExamples:\n\n```text\n/api                # show current settings and config file location\n/api show           # same as above\n\n/api model openai/gpt-oss-120b provider Groq\n/api base_url https://api.example.com/openai/v1 api_key sk-xxxx\n\n# You can also use key=value form\n/api model=gpt-4o-mini provider=Cerebras\n\n# Unset a value\n/api provider unset\n```\n\nNotes:\n- Values set via `/api` override environment variables and are remembered across runs.\n- Env vars `API_KEY` and `BASE_URL` are used as defaults if nothing is persisted.\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Stateless, small context, high leverage AI assistant",
    "version": "0.1.0",
    "project_urls": {
        "Bug Reports": "https://github.com/dadukhankevin/jeevescli/issues",
        "Homepage": "https://github.com/dadukhankevin/jeevescli",
        "Source": "https://github.com/dadukhankevin/jeevescli"
    },
    "split_keywords": [
        "ai",
        " assistant",
        " cli",
        " developer",
        " tools"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "8ce25493c644ef1e976642a7e3ba293bf01bc8f9f7307c720e62e05a899f64dc",
                "md5": "a208b5d092bb101095b6b86b02a0b470",
                "sha256": "2c9c59347f607a5c738fa0ecc2bc2e07de8cd536f27e69884db155c7c77dacce"
            },
            "downloads": -1,
            "filename": "jeevescli-0.1.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "a208b5d092bb101095b6b86b02a0b470",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 16885,
            "upload_time": "2025-08-28T01:08:21",
            "upload_time_iso_8601": "2025-08-28T01:08:21.050375Z",
            "url": "https://files.pythonhosted.org/packages/8c/e2/5493c644ef1e976642a7e3ba293bf01bc8f9f7307c720e62e05a899f64dc/jeevescli-0.1.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "a3ee52d2ded43115659f02dd38cfe43526ff5832d61617c17764c3f20ba6a342",
                "md5": "696968610e5898ddfd04cf4a5e501b42",
                "sha256": "58c88fa6d024bbcabf9ae6332e3fc4fb07b6b249fe9f9c64671fbf0dbc87d335"
            },
            "downloads": -1,
            "filename": "jeevescli-0.1.0.tar.gz",
            "has_sig": false,
            "md5_digest": "696968610e5898ddfd04cf4a5e501b42",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 15980,
            "upload_time": "2025-08-28T01:08:22",
            "upload_time_iso_8601": "2025-08-28T01:08:22.310824Z",
            "url": "https://files.pythonhosted.org/packages/a3/ee/52d2ded43115659f02dd38cfe43526ff5832d61617c17764c3f20ba6a342/jeevescli-0.1.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-28 01:08:22",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "dadukhankevin",
    "github_project": "jeevescli",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "jeevescli"
}
        
Elapsed time: 1.13385s