docs: add goose-mobile (#3315)
Co-authored-by: Rizel Scarlett <rizel@squareup.com>
This commit is contained in:
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"label": "Experimental",
|
||||
"position": 7,
|
||||
"link": {
|
||||
"type": "doc",
|
||||
"id": "experimental/index"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,46 @@
|
||||
---
|
||||
title: Goose Mobile
|
||||
sidebar_position: 2
|
||||
sidebar_label: Goose Mobile
|
||||
---
|
||||
|
||||
Goose Mobile is an experimental project inspired by the Goose application, designed to automate tasks on Android devices. It acts as an open agent that can run on your phone, providing maximal automation of everyday tasks.
|
||||
|
||||

|
||||
|
||||
## Overview
|
||||
|
||||
Goose Mobile is an interpretation of [Goose](https://github.com/block/goose) for Android, allowing for end-to-end task automation. It can function as a home screen replacement or react to notifications, executing pre-defined rules on your behalf.
|
||||
|
||||
:::caution
|
||||
Goose Mobile is an experimental project that requires deep access to your device. Use at your own risk.
|
||||
:::
|
||||
|
||||
## Key Features
|
||||
|
||||
- **Automation**: Automate multi-step tasks using installed apps.
|
||||
- **Notification Handling**: Respond to incoming notifications based on set rules.
|
||||
- **Extensibility**: Discover and use extensions from other apps to perform background tasks.
|
||||
|
||||
## Getting Started
|
||||
|
||||
Goose Mobile is a research project and not intended for production use. It's recommended to try it on a spare Android phone or an emulator.
|
||||
|
||||
### Installation Options
|
||||
|
||||
- **Pre-built APK**: Quickly install via [Firebase distribution link](https://appdistribution.firebase.google.com/pub/i/3f111ea732d5f7f6).
|
||||
- **Build from Source**: For developers, instructions are available in the [Goose Mobile repository](https://github.com/block/goose-mobile).
|
||||
|
||||
## Extending Goose Mobile
|
||||
|
||||
Goose Mobile supports extensions via the "mobile MCP" system, allowing it to use tools from other apps without switching contexts. For example, it can use a weather extension to quickly fetch weather information.
|
||||
|
||||
Example extension code and setup can be found in the repository's [README](https://github.com/block/goose-mobile).
|
||||
|
||||
## Contribution and Development
|
||||
|
||||
We welcome contributions to Goose Mobile. For more information, see the [Contributing Guide](https://github.com/block/goose-mobile/blob/main/CONTRIBUTING.md).
|
||||
|
||||
## Further Information
|
||||
|
||||
For detailed instructions, scenarios, and development setup, please refer to the [Goose Mobile repository](https://github.com/block/goose-mobile).
|
||||
@@ -0,0 +1,70 @@
|
||||
---
|
||||
title: Experimental
|
||||
hide_title: true
|
||||
description: Experimental and radically unstable, but lot's of fun.
|
||||
---
|
||||
|
||||
import Card from '@site/src/components/Card';
|
||||
import styles from '@site/src/components/Card/styles.module.css';
|
||||
|
||||
<h1 className={styles.pageTitle}>Experimental</h1>
|
||||
<p className={styles.pageDescription}>
|
||||
Goose is an open source project that is constantly being improved and expanded upon. These experimental features and projects are still in development and may not be fully stable or ready for production use, but they showcase exciting possibilities for the future of AI automation.
|
||||
</p>
|
||||
|
||||
:::note
|
||||
The list of experimental features may change as Goose development progresses. Some features may be promoted to stable features, while others might be modified or removed. This section will be updated with specific experimental features as they become available.
|
||||
:::
|
||||
|
||||
<div className={styles.categorySection}>
|
||||
<h2 className={styles.categoryTitle}>🧪 Experimental Features</h2>
|
||||
<div className={styles.cardGrid}>
|
||||
<Card
|
||||
title="Ollama Tool Shim"
|
||||
description="Enable tool calling capabilities for language models that don't natively support tool calling (like DeepSeek) using an experimental local interpreter model setup."
|
||||
link="/docs/experimental/ollama"
|
||||
/>
|
||||
<Card
|
||||
title="Goose Mobile"
|
||||
description="An experimental Android automation app that acts as an open agent running on your phone, providing maximal automation of everyday tasks."
|
||||
link="/docs/experimental/goose-mobile"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div className={styles.categorySection}>
|
||||
<h2 className={styles.categoryTitle}>📝 Featured Blog Posts</h2>
|
||||
<div className={styles.cardGrid}>
|
||||
<Card
|
||||
title="Finetuning Toolshim Models for Tool Calling"
|
||||
description="Addressing performance limitations in models without native tool calling support through dedicated toolshim model development."
|
||||
link="/blog/2025/04/11/finetuning-toolshim"
|
||||
/>
|
||||
<Card
|
||||
title="AI, But Make It Local With Goose and Ollama"
|
||||
description="Learn how to integrate Goose with Ollama for a fully local AI experience, including structured outputs and tool calling capabilities."
|
||||
link="/blog/2025/03/14/goose-ollama"
|
||||
/>
|
||||
<Card
|
||||
title="Community-Inspired Benchmarking: The Goose Vibe Check"
|
||||
description="See how open source AI models measure up in our first Goose agent benchmark tests, including toolshim performance analysis."
|
||||
link="/blog/2025/03/31/goose-benchmark"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div className={styles.categorySection}>
|
||||
<h2 className={styles.categoryTitle}>💬 Feedback & Support</h2>
|
||||
<div className={styles.cardGrid}>
|
||||
<Card
|
||||
title="GitHub Issues"
|
||||
description="Report bugs, request features, or contribute to the development of experimental features."
|
||||
link="https://github.com/block/goose/issues"
|
||||
/>
|
||||
<Card
|
||||
title="Discord Community"
|
||||
description="Join our community to discuss experimental features, share feedback, and connect with other users."
|
||||
link="https://discord.gg/block-opensource"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,44 @@
|
||||
---
|
||||
title: Ollama Tool Shim
|
||||
sidebar_position: 1
|
||||
sidebar_label: Ollama Tool Shim
|
||||
---
|
||||
|
||||
The Ollama tool shim is an experimental feature that enables tool calling capabilities for language models that don't natively support tool calling (like DeepSeek). It works by instructing the primary model to output json for intended tool usage, the interpretive model uses ollama structured outputs to translate the primary model's message into valid json, and then that json is translated into valid tool calls to be invoked.
|
||||
|
||||
|
||||
#### How to use the Ollama Tool Shim
|
||||
|
||||
1. Make sure you have [Ollama](https://ollama.com/download) installed and running
|
||||
2. The default interpreter model is `mistral-nemo`, if you want to proceed with this, you have to pull it from ollama server by running:
|
||||
|
||||
```bash
|
||||
ollama pull mistral-nemo
|
||||
```
|
||||
3. If you want to use a different model, make sure to pull it first from the Ollama server. Then override the default interpreter model using the `GOOSE_TOOLSHIM_OLLAMA_MODEL` environment variable. For example, to use the `llama3.2` model, run:
|
||||
|
||||
```bash
|
||||
ollama pull llama3.2
|
||||
```
|
||||
Then,
|
||||
|
||||
```bash
|
||||
GOOSE_TOOLSHIM_OLLAMA_MODEL=llama3.2
|
||||
```
|
||||
|
||||
4. For optimal performance, run the Ollama server with an increased context length:
|
||||
```bash
|
||||
OLLAMA_CONTEXT_LENGTH=32768 ollama serve
|
||||
```
|
||||
|
||||
5. Enable the tool shim by setting the `GOOSE_TOOLSHIM` environment variable:
|
||||
|
||||
```bash
|
||||
GOOSE_TOOLSHIM=1
|
||||
```
|
||||
|
||||
Start a new Goose session with your tool shim preferences:
|
||||
|
||||
```bash
|
||||
GOOSE_TOOLSHIM=1 GOOSE_TOOLSHIM_OLLAMA_MODEL=llama3.2 cargo run --bin goose session
|
||||
```
|
||||
Reference in New Issue
Block a user