Compare commits

..

1 Commits

Author SHA1 Message Date
Chuck Butkus
68ac7844ce test logging 2025-05-07 21:28:12 -04:00
487 changed files with 4981 additions and 9385 deletions

19
.github/.codecov.yml vendored Normal file
View File

@@ -0,0 +1,19 @@
codecov:
notify:
wait_for_ci: true
# our project is large, so 6 builds are typically uploaded. this waits till 5/6
# See https://docs.codecov.com/docs/notifications#section-preventing-notifications-until-after-n-builds
after_n_builds: 5
coverage:
status:
patch:
default:
threshold: 100% # allow patch coverage to be lower than project coverage by any amount
project:
default:
threshold: 5% # allow project coverage to drop at most 5%
comment: false
github_checks:
annotations: false

11
.github/CODEOWNERS vendored
View File

@@ -1,11 +0,0 @@
# CODEOWNERS file for OpenHands repository
# See https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners
# Frontend code owners
/frontend/ @rbren @amanape
# Evaluation code owners
/evaluation/ @xingyaoww @neubig
# Documentation code owners
/docs/ @mamoodi

View File

@@ -2,9 +2,10 @@
import os
import re
import sys
from typing import Set, Tuple
def find_version_references(directory: str) -> tuple[set[str], set[str]]:
def find_version_references(directory: str) -> Tuple[Set[str], Set[str]]:
openhands_versions = set()
runtime_versions = set()

View File

@@ -42,3 +42,7 @@ jobs:
- name: Run tests and collect coverage
working-directory: ./frontend
run: npm run test:coverage
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v5
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}

View File

@@ -312,7 +312,11 @@ jobs:
SANDBOX_RUNTIME_CONTAINER_IMAGE=$image_name \
TEST_IN_CI=true \
RUN_AS_OPENHANDS=false \
poetry run pytest -n 7 -raRs --reruns 2 --reruns-delay 5 -s ./tests/runtime --ignore=tests/runtime/test_browsergym_envs.py --durations=10
poetry run pytest -n 7 -raRs --reruns 2 --reruns-delay 5 --cov=openhands --cov-report=xml -s ./tests/runtime --ignore=tests/runtime/test_browsergym_envs.py --durations=10
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v5
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
# Run unit tests with the Docker runtime Docker images as openhands user
test_runtime_oh:
@@ -377,7 +381,11 @@ jobs:
SANDBOX_RUNTIME_CONTAINER_IMAGE=$image_name \
TEST_IN_CI=true \
RUN_AS_OPENHANDS=true \
poetry run pytest -n 7 -raRs --reruns 2 --reruns-delay 5 -s ./tests/runtime --ignore=tests/runtime/test_browsergym_envs.py --durations=10
poetry run pytest -n 7 -raRs --reruns 2 --reruns-delay 5 --cov=openhands --cov-report=xml -s ./tests/runtime --ignore=tests/runtime/test_browsergym_envs.py --durations=10
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v5
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
# The two following jobs (named identically) are to check whether all the runtime tests have passed as the
# "All Runtime Tests Passed" is a required job for PRs to merge

View File

@@ -83,7 +83,7 @@ jobs:
(github.event.review.author_association == 'OWNER' || github.event.review.author_association == 'COLLABORATOR' || github.event.review.author_association == 'MEMBER')
)
)
runs-on: "${{ inputs.runner || 'ubuntu-latest' }}"
runs-on: "${{ inputs.runner }}"
steps:
- name: Checkout repository
uses: actions/checkout@v4
@@ -92,9 +92,6 @@ jobs:
uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Upgrade pip
run: |
python -m pip install --upgrade pip
- name: Get latest versions and create requirements.txt
run: |
@@ -232,11 +229,11 @@ jobs:
// Perform package installation
if (isExperimentalLabel || isIssueCommentExperimental || isReviewCommentExperimental) {
console.log("Installing experimental OpenHands...");
await exec.exec("python -m pip install --upgrade pip");
await exec.exec("pip install git+https://github.com/all-hands-ai/openhands.git");
} else {
console.log("Installing from requirements.txt...");
await exec.exec("python -m pip install --upgrade pip");
await exec.exec("pip install -r /tmp/requirements.txt");
}

View File

@@ -48,7 +48,11 @@ jobs:
- name: Build Environment
run: make build
- name: Run Tests
run: poetry run pytest --forked -n auto -svv ./tests/unit
run: poetry run pytest --forked -n auto --cov=openhands --cov-report=xml -svv ./tests/unit
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v5
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
# Run specific Windows python tests
test-on-windows:

View File

@@ -9,7 +9,7 @@ on:
jobs:
trigger-job:
name: Trigger remote eval job
if: ${{ github.event.label.name == 'run-eval-1' || github.event.label.name == 'run-eval-2' || github.event.label.name == 'run-eval-50' || github.event.label.name == 'run-eval-100' }}
if: ${{ github.event.label.name == 'run-eval-xs' || github.event.label.name == 'run-eval-s' || github.event.label.name == 'run-eval-m' }}
runs-on: blacksmith-4vcpu-ubuntu-2204
steps:
@@ -26,14 +26,12 @@ jobs:
echo "Repository URL: $REPO_URL"
echo "PR Branch: $PR_BRANCH"
if [[ "${{ github.event.label.name }}" == "run-eval-1" ]]; then
if [[ "${{ github.event.label.name }}" == "run-eval-xs" ]]; then
EVAL_INSTANCES="1"
elif [[ "${{ github.event.label.name }}" == "run-eval-2" ]]; then
EVAL_INSTANCES="2"
elif [[ "${{ github.event.label.name }}" == "run-eval-50" ]]; then
EVAL_INSTANCES="50"
elif [[ "${{ github.event.label.name }}" == "run-eval-100" ]]; then
EVAL_INSTANCES="100"
elif [[ "${{ github.event.label.name }}" == "run-eval-s" ]]; then
EVAL_INSTANCES="5"
elif [[ "${{ github.event.label.name }}" == "run-eval-m" ]]; then
EVAL_INSTANCES="30"
fi
curl -X POST \

View File

@@ -1,3 +1,8 @@
---
name: repo
type: repo
agent: CodeActAgent
---
This repository contains the code for OpenHands, an automated AI software engineer. It has a Python backend
(in the `openhands` directory) and React frontend (in the `frontend` directory).
@@ -9,7 +14,7 @@ IMPORTANT: Before making any changes to the codebase, ALWAYS run `make install-p
Before pushing any changes, you MUST ensure that any lint errors or simple test errors have been fixed.
* If you've made changes to the backend, you should run `pre-commit run --config ./dev_config/python/.pre-commit-config.yaml` (this will run on staged files).
* If you've made changes to the backend, you should run `pre-commit run --all-files --config ./dev_config/python/.pre-commit-config.yaml`
* If you've made changes to the frontend, you should run `cd frontend && npm run lint:fix && npm run build ; cd ..`
The pre-commit hooks MUST pass successfully before pushing any changes to the repository. This is a mandatory requirement to maintain code quality and consistency.

0
.openhands/pre-commit.sh Executable file → Normal file
View File

View File

@@ -1,8 +1,8 @@
# Development Guide
This guide is for people working on OpenHands and editing the source code.
If you wish to contribute your changes, check out the [CONTRIBUTING.md](https://github.com/All-Hands-AI/OpenHands/blob/main/CONTRIBUTING.md) on how to clone and setup the project
initially before moving on. Otherwise, you can clone the OpenHands project directly.
If you wish to contribute your changes, check out the [CONTRIBUTING.md](https://github.com/All-Hands-AI/OpenHands/blob/main/CONTRIBUTING.md) on how to clone and setup the project initially before moving on.
Otherwise, you can clone the OpenHands project directly.
## Start the Server for Development
@@ -14,15 +14,14 @@ initially before moving on. Otherwise, you can clone the OpenHands project direc
- [NodeJS](https://nodejs.org/en/download/package-manager) >= 22.x
- [Poetry](https://python-poetry.org/docs/#installing-with-the-official-installer) >= 1.8
- OS-specific dependencies:
- Ubuntu: build-essential => `sudo apt-get install build-essential python3.12-dev`
- Ubuntu: build-essential => `sudo apt-get install build-essential`
- WSL: netcat => `sudo apt-get install netcat`
Make sure you have all these dependencies installed before moving on to `make build`.
#### Develop without sudo access
If you want to develop without system admin/sudo access to upgrade/install `Python` and/or `NodeJs`, you can use
`conda` or `mamba` to manage the packages for you:
If you want to develop without system admin/sudo access to upgrade/install `Python` and/or `NodeJs`, you can use `conda` or `mamba` to manage the packages for you:
```bash
# Download and install Mamba (a faster version of conda)
@@ -37,8 +36,7 @@ mamba install conda-forge::poetry
### 2. Build and Setup The Environment
Begin by building the project which includes setting up the environment and installing dependencies. This step ensures
that OpenHands is ready to run on your system:
Begin by building the project which includes setting up the environment and installing dependencies. This step ensures that OpenHands is ready to run on your system:
```bash
make build
@@ -47,6 +45,8 @@ make build
### 3. Configuring the Language Model
OpenHands supports a diverse array of Language Models (LMs) through the powerful [litellm](https://docs.litellm.ai) library.
By default, we've chosen Claude Sonnet 3.5 as our go-to model, but the world is your oyster! You can unleash the
potential of any other LM that piques your interest.
To configure the LM of your choice, run:
@@ -54,12 +54,9 @@ To configure the LM of your choice, run:
make setup-config
```
This command will prompt you to enter the LLM API key, model name, and other variables ensuring that OpenHands is
tailored to your specific needs. Note that the model name will apply only when you run headless. If you use the UI,
please set the model in the UI.
This command will prompt you to enter the LLM API key, model name, and other variables ensuring that OpenHands is tailored to your specific needs. Note that the model name will apply only when you run headless. If you use the UI, please set the model in the UI.
Note: If you have previously run OpenHands using the docker command, you may have already set some environmental
variables in your terminal. The final configurations are set from highest to lowest priority:
Note: If you have previously run OpenHands using the docker command, you may have already set some environmental variables in your terminal. The final configurations are set from highest to lowest priority:
Environment variables > config.toml variables > default variables
**Note on Alternative Models:**
@@ -77,15 +74,13 @@ make run
#### Option B: Individual Server Startup
- **Start the Backend Server:** If you prefer, you can start the backend server independently to focus on
backend-related tasks or configurations.
- **Start the Backend Server:** If you prefer, you can start the backend server independently to focus on backend-related tasks or configurations.
```bash
make start-backend
```
- **Start the Frontend Server:** Similarly, you can start the frontend server on its own to work on frontend-related
components or interface enhancements.
- **Start the Frontend Server:** Similarly, you can start the frontend server on its own to work on frontend-related components or interface enhancements.
```bash
make start-frontend
```
@@ -120,10 +115,10 @@ poetry run pytest ./tests/unit/test_*.py
### 9. Use existing Docker image
To reduce build time (e.g., if no changes were made to the client-runtime component), you can use an existing Docker
container image by setting the SANDBOX_RUNTIME_CONTAINER_IMAGE environment variable to the desired Docker image.
To reduce build time (e.g., if no changes were made to the client-runtime component), you can use an existing Docker container image by
setting the SANDBOX_RUNTIME_CONTAINER_IMAGE environment variable to the desired Docker image.
Example: `export SANDBOX_RUNTIME_CONTAINER_IMAGE=ghcr.io/all-hands-ai/runtime:0.38-nikolaik`
Example: `export SANDBOX_RUNTIME_CONTAINER_IMAGE=ghcr.io/all-hands-ai/runtime:0.37-nikolaik`
## Develop inside Docker container

View File

@@ -3,12 +3,17 @@ These are the procedures and guidelines on how issues are triaged in this repo b
## General
* All issues must be tagged with **enhancement**, **bug** or **troubleshooting/help**.
* Issues may be tagged with what it relates to (**agent quality**, **resolver**, **CLI**, etc.).
* Issues may be tagged with what it relates to (**agent quality**, **frontend**, **resolver**, etc.).
## Severity
* **Low**: Minor issues or affecting single user.
* **Medium**: Affecting multiple users.
* **High**: High visibility issues or affecting many users.
* **Critical**: Affecting all users or potential security issues.
## Effort
* Issues may be estimated with effort required (**small effort**, **medium effort**, **large effort**).
## Difficulty
* Issues with low implementation difficulty may be tagged with **good first issue**.

View File

@@ -154,20 +154,21 @@ install-python-dependencies:
fi
@if [ "${INSTALL_PLAYWRIGHT}" != "false" ] && [ "${INSTALL_PLAYWRIGHT}" != "0" ]; then \
if [ -f "/etc/manjaro-release" ]; then \
echo "$(BLUE)Detected Manjaro Linux. Installing Patchright dependencies...$(RESET)"; \
poetry run patchright install chromium; \
echo "$(BLUE)Detected Manjaro Linux. Installing Playwright dependencies...$(RESET)"; \
poetry run pip install playwright; \
poetry run playwright install chromium; \
else \
if [ ! -f cache/patchright_chromium_is_installed.txt ]; then \
echo "Installing patchright chromium..."; \
poetry run patchright install chromium; \
if [ ! -f cache/playwright_chromium_is_installed.txt ]; then \
echo "Running playwright install --with-deps chromium..."; \
poetry run playwright install --with-deps chromium; \
mkdir -p cache; \
touch cache/patchright_chromium_is_installed.txt; \
touch cache/playwright_chromium_is_installed.txt; \
else \
echo "Setup already done. Skipping patchright installation."; \
echo "Setup already done. Skipping playwright installation."; \
fi \
fi \
else \
echo "Skipping Patchright installation (INSTALL_PLAYWRIGHT=${INSTALL_PLAYWRIGHT})."; \
echo "Skipping Playwright installation (INSTALL_PLAYWRIGHT=${INSTALL_PLAYWRIGHT})."; \
fi
@echo "$(GREEN)Python dependencies installed successfully.$(RESET)"

View File

@@ -51,17 +51,17 @@ system requirements and more information.
```bash
docker pull docker.all-hands.dev/all-hands-ai/runtime:0.38-nikolaik
docker pull docker.all-hands.dev/all-hands-ai/runtime:0.37-nikolaik
docker run -it --rm --pull=always \
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.38-nikolaik \
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.37-nikolaik \
-e LOG_ALL_EVENTS=true \
-v /var/run/docker.sock:/var/run/docker.sock \
-v ~/.openhands-state:/.openhands-state \
-p 3000:3000 \
--add-host host.docker.internal:host-gateway \
--name openhands-app \
docker.all-hands.dev/all-hands-ai/openhands:0.38
docker.all-hands.dev/all-hands-ai/openhands:0.37
```
You'll find OpenHands running at [http://localhost:3000](http://localhost:3000)!
@@ -99,6 +99,13 @@ check out our [documentation](https://docs.all-hands.dev/modules/usage/getting-s
There you'll find resources on how to use different LLM providers,
troubleshooting resources, and advanced configuration options.
### Custom Scripts
OpenHands supports custom scripts that run at different points in the runtime lifecycle:
- **setup.sh**: Place this script in the `.openhands` directory of your repository to run custom setup commands when the runtime initializes.
- **pre-commit.sh**: Place this script in the `.openhands` directory to add a custom git pre-commit hook that runs before each commit. This can be used to enforce code quality standards, run tests, or perform other checks before allowing commits.
## 🤝 How to Join the Community
OpenHands is a community-driven project, and we welcome contributions from everyone. We do most of our communication

View File

@@ -255,11 +255,6 @@ enable_history_truncation = true
# useful when an agent doesn't demand high quality but uses a lot of tokens
llm_config = 'gpt3'
[agent.CustomAgent]
# Example: use a custom agent from a different package
# This will be automatically be registered as a new agent named "CustomAgent"
classpath = "my_package.my_module.MyCustomAgent"
#################################### Sandbox ###################################
# Configuration for the sandbox
##############################################################################

View File

@@ -11,7 +11,7 @@ services:
- BACKEND_HOST=${BACKEND_HOST:-"0.0.0.0"}
- SANDBOX_API_HOSTNAME=host.docker.internal
#
- SANDBOX_RUNTIME_CONTAINER_IMAGE=${SANDBOX_RUNTIME_CONTAINER_IMAGE:-ghcr.io/all-hands-ai/runtime:0.38-nikolaik}
- SANDBOX_RUNTIME_CONTAINER_IMAGE=${SANDBOX_RUNTIME_CONTAINER_IMAGE:-ghcr.io/all-hands-ai/runtime:0.37-nikolaik}
- SANDBOX_USER_ID=${SANDBOX_USER_ID:-1234}
- WORKSPACE_MOUNT_PATH=${WORKSPACE_BASE:-$PWD/workspace}
ports:

View File

@@ -1,6 +1,6 @@
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v5.0.0
rev: v4.5.0
hooks:
- id: trailing-whitespace
exclude: docs/modules/python
@@ -10,17 +10,17 @@ repos:
- id: debug-statements
- repo: https://github.com/tox-dev/pyproject-fmt
rev: v2.5.1
rev: 1.7.0
hooks:
- id: pyproject-fmt
- repo: https://github.com/abravalheri/validate-pyproject
rev: v0.24.1
rev: v0.16
hooks:
- id: validate-pyproject
- repo: https://github.com/astral-sh/ruff-pre-commit
# Ruff version.
rev: v0.11.8
rev: v0.4.1
hooks:
# Run the linter.
- id: ruff
@@ -33,7 +33,7 @@ repos:
types_or: [python, pyi, jupyter]
- repo: https://github.com/pre-commit/mirrors-mypy
rev: v1.15.0
rev: v1.9.0
hooks:
- id: mypy
additional_dependencies:

View File

@@ -20,12 +20,6 @@ ignore = [
"B010",
"B904",
"B018",
# Temporarily ignore ASYNC rules until they can be properly fixed in a separate PR
"ASYNC110",
"ASYNC220",
"ASYNC221",
"ASYNC230",
"ASYNC251",
]
[lint.flake8-quotes]

View File

@@ -7,7 +7,7 @@ services:
image: openhands:latest
container_name: openhands-app-${DATE:-}
environment:
- SANDBOX_RUNTIME_CONTAINER_IMAGE=${SANDBOX_RUNTIME_CONTAINER_IMAGE:-docker.all-hands.dev/all-hands-ai/runtime:0.38-nikolaik}
- SANDBOX_RUNTIME_CONTAINER_IMAGE=${SANDBOX_RUNTIME_CONTAINER_IMAGE:-docker.all-hands.dev/all-hands-ai/runtime:0.37-nikolaik}
#- SANDBOX_USER_ID=${SANDBOX_USER_ID:-1234} # enable this only if you want a specific non-root sandbox user but you will have to manually adjust permissions of openhands-state for this user
- WORKSPACE_MOUNT_PATH=${WORKSPACE_BASE:-$PWD/workspace}
ports:

View File

@@ -4,32 +4,37 @@ This website is built using [Docusaurus](https://docusaurus.io/).
When published, the content will be published at https://docs.all-hands.dev/.
### Local Development
### Installation
```bash
$ cd docs
$ npm install
$ npm run start
$ yarn
```
This command starts a local development server and opens up a browser window.
Most changes are reflected live without having to restart the server.
### Local Development
```
$ yarn start # for the default English version
```
This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.
Alternatively, you can pass a `--locale` argument to render a specific language in dev mode as in:
```
$ npm run start --locale pt-BR # for the Brazilian Portuguese version
$ npm run start --locale fr # for the French version
$ npm run start --locale zh-Hans # for the Chinese Han (simplified variant) version
$ yarn start --locale pt-BR # for the Brazilian Portuguese version
$ yarn start --locale fr # for the French version
$ yarn start --locale zh-Hans # for the Chinese Han (simplified variant) version
```
### Build
```
$ npm run build
$ yarn build
```
This command generates static content into the `build` directory and can be served using any static contents hosting service.
It compiles all languages.
### Deployment

View File

@@ -22,4 +22,4 @@ Veuillez noter que la sélection de ces technologies est en cours, et des techno
## Licence
Distribué sous la [Licence](https://github.com/All-Hands-AI/OpenHands/blob/main/LICENSE) MIT.
Distribué sous la [Licence](https://github.com/All-Hands-AI/OpenHands/blob/main/LICENSE) MIT.

View File

@@ -20,4 +20,4 @@ L'idée conceptuelle est illustrée ci-dessous. À chaque tour, l'agent peut :
https://github.com/All-Hands-AI/OpenHands/assets/38853559/f592a192-e86c-4f48-ad31-d69282d5f6ac
_Exemple de CodeActAgent avec `gpt-4-turbo-2024-04-09` réalisant une tâche de science des données (régression linéaire)_.
_Exemple de CodeActAgent avec `gpt-4-turbo-2024-04-09` réalisant une tâche de science des données (régression linéaire)_.

View File

@@ -51,4 +51,4 @@ _**Avertissement** : L'architecture backend est en cours de développement et pe
6. Exporter le diagramme en fichiers PNG et SVG et remplacer les diagrammes existants dans le répertoire `docs/architecture`. Cela peut être fait avec (par exemple [PlantText](https://www.planttext.com/))
</div>
</details>
</details>

View File

@@ -125,4 +125,4 @@ Aspects clés du système de plugins :
2. Enregistrement du plugin : Les plugins disponibles sont enregistrés dans un dictionnaire `ALL_PLUGINS`
3. Spécification du plugin : Les plugins sont associés à `Agent.sandbox_plugins: list[PluginRequirement]`. Les utilisateurs peuvent spécifier quels plugins charger lors de l'initialisation du runtime
4. Initialisation : Les plugins sont initialisés de manière asynchrone au démarrage du client runtime
5. Utilisation : Le client runtime peut utiliser les plugins initialisés pour étendre ses capacités (par exemple, le JupyterPlugin pour exécuter des cellules IPython)
5. Utilisation : Le client runtime peut utiliser les plugins initialisés pour étendre ses capacités (par exemple, le JupyterPlugin pour exécuter des cellules IPython)

View File

@@ -69,7 +69,7 @@ data = {
response = requests.post(url, headers=headers, json=data)
conversation = response.json()
print(f"Conversation Link: https://app.all-hands.dev/conversations/{conversation['conversation_id']}")
print(f"Conversation Link: https://app.all-hands.dev/conversations/{conversation['id']}")
print(f"Status: {conversation['status']}")
```
</details>
@@ -174,4 +174,4 @@ La réponse est formatée comme suit :
L'API a une limite de 10 conversations simultanées par compte. Si vous avez besoin d'une limite plus élevée pour votre cas d'utilisation, veuillez nous contacter à [contact@all-hands.dev](mailto:contact@all-hands.dev).
Si vous dépassez cette limite, l'API renverra une réponse 429 Too Many Requests.
Si vous dépassez cette limite, l'API renverra une réponse 429 Too Many Requests.

View File

@@ -4,12 +4,12 @@ Le Résolveur GitHub automatise les corrections de code et fournit une assistanc
## Configuration
Le Résolveur GitHub Cloud est disponible automatiquement lorsque vous
Le Résolveur GitHub Cloud est disponible automatiquement lorsque vous
[accordez l'accès au dépôt OpenHands Cloud](./openhands-cloud#adding-repository-access).
## Utilisation
Après avoir accordé l'accès au dépôt OpenHands Cloud, vous pouvez utiliser le Résolveur GitHub Cloud sur les problèmes et les pull requests
Après avoir accordé l'accès au dépôt OpenHands Cloud, vous pouvez utiliser le Résolveur GitHub Cloud sur les problèmes et les pull requests
du dépôt.
### Problèmes (Issues)
@@ -30,4 +30,4 @@ Pour qu'OpenHands travaille sur des pull requests, utilisez `@openhands` dans le
OpenHands va :
1. Commenter la PR pour vous informer qu'il y travaille.
2. Effectuer la tâche.
2. Effectuer la tâche.

View File

@@ -62,4 +62,4 @@ Lorsque vous utilisez votre compte GitLab, OpenHands aura automatiquement accès
- Liste des conversations Affiche uniquement les 10 conversations les plus récentes initiées au cours des 10 derniers jours.
- Espaces de travail Les espaces de travail de conversation sont conservés pendant 14 jours.
- Environnements d'exécution Les environnements d'exécution restent actifs ("chauds") pendant 30 minutes. Après cette période, la reprise d'une conversation peut prendre 1 à 2 minutes.
- Environnements d'exécution Les environnements d'exécution restent actifs ("chauds") pendant 30 minutes. Après cette période, la reprise d'une conversation peut prendre 1 à 2 minutes.

View File

@@ -392,4 +392,4 @@ Pour les utiliser avec la commande docker, passez `-e SANDBOX_<option>`. Exemple
Les options de configuration de sécurité sont définies dans la section `[security]` du fichier `config.toml`.
Pour les utiliser avec la commande docker, passez `-e SECURITY
Pour les utiliser avec la commande docker, passez `-e SECURITY

View File

@@ -20,4 +20,4 @@ export MY_ENV_VAR="my value"
sudo apt-get update
sudo apt-get install -y lsof
cd frontend && npm install ; cd ..
```
```

View File

@@ -35,4 +35,4 @@ Pour les données sur les serveurs d'All Hands AI, nous sommes heureux de les su
**Une Seule Donnée :** Si vous souhaitez qu'une donnée soit supprimée, nous ajouterons prochainement un mécanisme pour supprimer des éléments de données en utilisant le lien et le mot de passe qui s'affichent sur l'interface lorsque vous soumettez des données.
**Toutes les Données :** Si vous souhaitez que toutes vos données soient supprimées, ou si vous ne disposez pas de l'identifiant et du mot de passe que vous avez reçus lors de la soumission des données, veuillez contacter `contact@all-hands.dev` depuis l'adresse e-mail que vous avez enregistrée lors de la soumission initiale des données.
**Toutes les Données :** Si vous souhaitez que toutes vos données soient supprimées, ou si vous ne disposez pas de l'identifiant et du mot de passe que vous avez reçus lors de la soumission des données, veuillez contacter `contact@all-hands.dev` depuis l'adresse e-mail que vous avez enregistrée lors de la soumission initiale des données.

View File

@@ -1,10 +1,10 @@
# Premiers pas avec OpenHands
Vous avez [exécuté OpenHands](./installation) et vous avez
Vous avez [exécuté OpenHands](./installation) et vous avez
[configuré votre LLM](./installation#setup). Et maintenant ?
OpenHands peut vous aider pour diverses tâches d'ingénierie. Cependant, la technologie est encore nouvelle, et nous sommes loin d'avoir
des agents capables de gérer des tâches complexes de manière autonome. Il est important de comprendre ce que l'agent fait bien et où il
OpenHands peut vous aider pour diverses tâches d'ingénierie. Cependant, la technologie est encore nouvelle, et nous sommes loin d'avoir
des agents capables de gérer des tâches complexes de manière autonome. Il est important de comprendre ce que l'agent fait bien et où il
a besoin de soutien.
## Hello World
@@ -96,4 +96,4 @@ Gardez ces conseils à l'esprit :
* Fournissez beaucoup de contexte.
* Committez et poussez fréquemment.
Consultez [Meilleures pratiques de prompt](./prompting/prompting-best-practices) pour plus de conseils sur la façon de tirer le meilleur parti d'OpenHands.
Consultez [Meilleures pratiques de prompt](./prompting/prompting-best-practices) pour plus de conseils sur la façon de tirer le meilleur parti d'OpenHands.

View File

@@ -37,7 +37,7 @@ Pour exécuter OpenHands en mode CLI avec Docker :
```bash
docker run -it \
--pull=always \
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.38-nikolaik \
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.37-nikolaik \
-e SANDBOX_USER_ID=$(id -u) \
-e SANDBOX_VOLUMES=$SANDBOX_VOLUMES \
-e LLM_API_KEY=$LLM_API_KEY \
@@ -46,10 +46,10 @@ docker run -it \
-v ~/.openhands-state:/.openhands-state \
--add-host host.docker.internal:host-gateway \
--name openhands-app-$(date +%Y%m%d%H%M%S) \
docker.all-hands.dev/all-hands-ai/openhands:0.38 \
docker.all-hands.dev/all-hands-ai/openhands:0.37 \
python -m openhands.core.cli
```
Cette commande lancera une session interactive dans Docker où vous pourrez saisir des tâches et recevoir des réponses d'OpenHands.
Le paramètre `-e SANDBOX_USER_ID=$(id -u)` est transmis à la commande Docker pour s'assurer que l'utilisateur du sandbox correspond aux permissions de l'utilisateur hôte. Cela empêche l'agent de créer des fichiers appartenant à root dans l'espace de travail monté.
Le paramètre `-e SANDBOX_USER_ID=$(id -u)` est transmis à la commande Docker pour s'assurer que l'utilisateur du sandbox correspond aux permissions de l'utilisateur hôte. Cela empêche l'agent de créer des fichiers appartenant à root dans l'espace de travail monté.

View File

@@ -92,4 +92,4 @@ platform = "linux/amd64"
### Exécution
Exécutez OpenHands en lançant ```make run``` dans le répertoire principal.
Exécutez OpenHands en lançant ```make run``` dans le répertoire principal.

View File

@@ -68,4 +68,4 @@ Les valeurs dans l'extrait ci-dessus peuvent être mises à jour de sorte que :
* *d* : le répertoire de travail openhands
* *c* : l'agent
* *l* : la configuration LLM (prédéfinie dans config.toml)
* *n* : nom de session (par exemple, nom d'eventstream)
* *n* : nom de session (par exemple, nom d'eventstream)

View File

@@ -71,4 +71,4 @@ Lorsque vous apportez des modifications au code, veuillez vous assurer que :
1. La documentation pertinente est mise à jour pour refléter vos changements
2. Les nouvelles fonctionnalités sont documentées dans les fichiers README appropriés
3. Tout changement d'API est reflété dans la documentation du serveur
4. La documentation suit le guide de style dans `/docs/DOC_STYLE_GUIDE.md`
4. La documentation suit le guide de style dans `/docs/DOC_STYLE_GUIDE.md`

View File

@@ -275,4 +275,4 @@ Cette fonction fait ce qui suit :
2. Vérifie combien de fois l'agent a tenté de communiquer avec l'utilisateur
3. Si l'agent a fait plusieurs tentatives, elle lui fournit une option pour abandonner
En utilisant cette fonction, vous pouvez assurer un comportement cohérent à travers plusieurs séries d'évaluations et empêcher l'agent de rester bloqué en attendant une entrée humaine.
En utilisant cette fonction, vous pouvez assurer un comportement cohérent à travers plusieurs séries d'évaluations et empêcher l'agent de rester bloqué en attendant une entrée humaine.

View File

@@ -48,4 +48,4 @@ Les options de personnalisation que vous pouvez définir sont :
| `OPENHANDS_MAX_ITER` | Variable | Définir la limite maximale d'itérations de l'agent | `OPENHANDS_MAX_ITER=10` |
| `OPENHANDS_MACRO` | Variable | Personnaliser la macro par défaut pour invoquer le résolveur | `OPENHANDS_MACRO=@resolveit` |
| `OPENHANDS_BASE_CONTAINER_IMAGE` | Variable | Sandbox personnalisé ([en savoir plus](https://docs.all-hands.dev/modules/usage/how-to/custom-sandbox-guide)) | `OPENHANDS_BASE_CONTAINER_IMAGE="custom_image"` |
| `TARGET_BRANCH` | Variable | Fusionner vers une branche autre que `main` | `TARGET_BRANCH="dev"` |
| `TARGET_BRANCH` | Variable | Fusionner vers une branche autre que `main` | `TARGET_BRANCH="dev"` |

View File

@@ -139,4 +139,4 @@ OpenHands exporte automatiquement un `GITLAB_TOKEN` vers l'environnement shell s
- Utilisez l'un des modèles recommandés, comme décrit dans la [section LLMs](usage/llms/llms.md).
N'oubliez pas que le mode GUI d'OpenHands est conçu pour rendre votre interaction avec l'assistant IA aussi fluide et intuitive
que possible. N'hésitez pas à explorer ses fonctionnalités pour maximiser votre productivité.
que possible. N'hésitez pas à explorer ses fonctionnalités pour maximiser votre productivité.

View File

@@ -34,7 +34,7 @@ Pour exécuter OpenHands en mode Headless avec Docker :
```bash
docker run -it \
--pull=always \
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.38-nikolaik \
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.37-nikolaik \
-e SANDBOX_USER_ID=$(id -u) \
-e SANDBOX_VOLUMES=$SANDBOX_VOLUMES \
-e LLM_API_KEY=$LLM_API_KEY \
@@ -44,7 +44,7 @@ docker run -it \
-v ~/.openhands-state:/.openhands-state \
--add-host host.docker.internal:host-gateway \
--name openhands-app-$(date +%Y%m%d%H%M%S) \
docker.all-hands.dev/all-hands-ai/openhands:0.38 \
docker.all-hands.dev/all-hands-ai/openhands:0.37 \
python -m openhands.core.main -t "write a bash script that prints hi"
```
@@ -56,4 +56,4 @@ Pour voir toutes les options de configuration disponibles pour le mode headless,
### Journaux supplémentaires
Pour que le mode headless enregistre toutes les actions de l'agent, exécutez dans le terminal : `export LOG_ALL_EVENTS=true`
Pour que le mode headless enregistre toutes les actions de l'agent, exécutez dans le terminal : `export LOG_ALL_EVENTS=true`

View File

@@ -58,17 +58,17 @@ Un système avec un processeur moderne et un minimum de **4 Go de RAM** est reco
La façon la plus simple d'exécuter OpenHands est dans Docker.
```bash
docker pull docker.all-hands.dev/all-hands-ai/runtime:0.38-nikolaik
docker pull docker.all-hands.dev/all-hands-ai/runtime:0.37-nikolaik
docker run -it --rm --pull=always \
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.38-nikolaik \
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.37-nikolaik \
-e LOG_ALL_EVENTS=true \
-v /var/run/docker.sock:/var/run/docker.sock \
-v ~/.openhands-state:/.openhands-state \
-p 3000:3000 \
--add-host host.docker.internal:host-gateway \
--name openhands-app \
docker.all-hands.dev/all-hands-ai/openhands:0.38
docker.all-hands.dev/all-hands-ai/openhands:0.37
```
Vous trouverez OpenHands en cours d'exécution à l'adresse http://localhost:3000 !
@@ -118,4 +118,4 @@ Cette version est instable et est recommandée uniquement à des fins de test ou
Pour le flux de travail de développement, consultez [Development.md](https://github.com/All-Hands-AI/OpenHands/blob/main/Development.md).
Vous rencontrez des problèmes ? Consultez notre [Guide de dépannage](https://docs.all-hands.dev/modules/usage/troubleshooting).
Vous rencontrez des problèmes ? Consultez notre [Guide de dépannage](https://docs.all-hands.dev/modules/usage/troubleshooting).

View File

@@ -26,4 +26,4 @@
### Navigateur
- Utilisé par OpenHands pour naviguer sur des sites web.
- Le navigateur n'est pas interactif.
- Le navigateur n'est pas interactif.

View File

@@ -4,7 +4,7 @@ OpenHands utilise LiteLLM pour effectuer des appels aux modèles de chat d'Azure
## Configuration d'Azure OpenAI
Lors de l'exécution d'OpenHands, vous devrez définir la variable d'environnement suivante en utilisant `-e` dans la
Lors de l'exécution d'OpenHands, vous devrez définir la variable d'environnement suivante en utilisant `-e` dans la
[commande docker run](../installation#running-openhands) :
```
@@ -38,4 +38,4 @@ Lors de l'exécution d'OpenHands, définissez la variable d'environnement suivan
```
LLM_API_VERSION="<api-version>" # ex. "2024-02-15-preview"
```
```

View File

@@ -133,4 +133,4 @@ Utilisez cette configuration lorsque vous souhaitez qu'un LLM ébauche des modif
:::note
Les configurations LLM personnalisées ne sont disponibles que lorsque vous utilisez OpenHands en mode développement, via `main.py` ou `cli.py`. Lors de l'exécution via `docker run`, veuillez utiliser les options de configuration standard.
:::
:::

View File

@@ -26,4 +26,4 @@ VERTEXAI_LOCATION="<votre-emplacement-gcp>"
Ensuite, définissez les éléments suivants dans l'interface utilisateur d'OpenHands via les Paramètres :
- `LLM Provider` sur `VertexAI`
- `LLM Model` sur le modèle que vous utiliserez.
Si le modèle n'est pas dans la liste, activez les options `Advanced`, et saisissez-le dans `Custom Model` (par exemple vertex_ai/&lt;nom-du-modèle&gt;).
Si le modèle n'est pas dans la liste, activez les options `Advanced`, et saisissez-le dans `Custom Model` (par exemple vertex_ai/&lt;nom-du-modèle&gt;).

View File

@@ -19,4 +19,4 @@ accéderiez à n'importe quel point de terminaison compatible OpenAI. Dans l'int
2. Définissez les éléments suivants :
- `Custom Model` avec le préfixe `openai/` + le modèle que vous utiliserez (par exemple `openai/llama3-70b-8192`)
- `Base URL` sur `https://api.groq.com/openai/v1`
- `API Key` avec votre clé API Groq
- `API Key` avec votre clé API Groq

View File

@@ -17,4 +17,4 @@ Pour utiliser le proxy LiteLLM avec OpenHands, vous devez :
Les modèles pris en charge dépendent de la configuration de votre proxy LiteLLM. OpenHands prend en charge tous les modèles que votre proxy LiteLLM est configuré pour gérer.
Référez-vous à la configuration de votre proxy LiteLLM pour la liste des modèles disponibles et leurs noms.
Référez-vous à la configuration de votre proxy LiteLLM pour la liste des modèles disponibles et leurs noms.

View File

@@ -89,4 +89,4 @@ num_retries = 4
retry_min_wait = 5
retry_max_wait = 30
retry_multiplier = 2
```
```

View File

@@ -80,4 +80,4 @@ Une fois qu'OpenHands est en cours d'exécution, vous devrez définir les élém
2. Définissez les éléments suivants :
- `Modèle personnalisé` sur `openai/<served-model-name>` (par exemple `openai/openhands-lm-32b-v0.1`)
- `URL de base` sur `http://host.docker.internal:8000`
- `Clé API` sur la même chaîne que celle que vous avez définie lors du service du modèle (par exemple `mykey`)
- `Clé API` sur la même chaîne que celle que vous avez définie lors du service du modèle (par exemple `mykey`)

View File

@@ -22,4 +22,4 @@ Si vous utilisez un proxy OpenAI, dans l'interface utilisateur d'OpenHands via l
2. Définissez les éléments suivants :
- `Custom Model` sur openai/&lt;nom-du-modèle&gt; (par exemple `openai/gpt-4o` ou openai/&lt;préfixe-proxy&gt;/&lt;nom-du-modèle&gt;)
- `Base URL` sur l'URL de votre proxy OpenAI
- `API Key` sur votre clé API OpenAI
- `API Key` sur votre clé API OpenAI

View File

@@ -9,4 +9,4 @@ Lors de l'exécution d'OpenHands, vous devrez définir les éléments suivants d
* `LLM Model` sur le modèle que vous utiliserez.
[Visitez ce lien pour voir une liste complète des modèles OpenRouter](https://openrouter.ai/models).
Si le modèle ne figure pas dans la liste, activez les options `Advanced`, et saisissez-le dans `Custom Model` (par exemple openrouter/&lt;nom-du-modèle&gt; comme `openrouter/anthropic/claude-3.5-sonnet`).
* `API Key` avec votre clé API OpenRouter.
* `API Key` avec votre clé API OpenRouter.

View File

@@ -93,4 +93,4 @@ L'agent peut alors utiliser ces outils comme n'importe quel outil intégré. Lor
1. OpenHands achemine l'appel vers le serveur MCP approprié
2. Le serveur traite la demande et renvoie une réponse
3. OpenHands convertit la réponse en une observation et la présente à l'agent
3. OpenHands convertit la réponse en une observation et la présente à l'agent

View File

@@ -33,4 +33,4 @@ triggers:
L'utilisateur a dit le mot magique. Répondez avec "C'était délicieux !"
```
[Voir des exemples de microagents déclenchés par mots-clés dans le dépôt officiel OpenHands](https://github.com/All-Hands-AI/OpenHands/tree/main/microagents)
[Voir des exemples de microagents déclenchés par mots-clés dans le dépôt officiel OpenHands](https://github.com/All-Hands-AI/OpenHands/tree/main/microagents)

View File

@@ -37,4 +37,4 @@ est requis :
| Type de Microagent | Requis |
|----------------------------------------|---------|
| `Microagents Généraux de Dépôt` | Non |
| `Microagents Déclenchés par Mots-clés` | Oui |
| `Microagents Déclenchés par Mots-clés` | Oui |

View File

@@ -47,4 +47,4 @@ Soumettez une pull request avec :
- Le nouveau fichier de microagent.
- Documentation mise à jour si nécessaire.
- Description de l'objectif et des capacités de l'agent.
- Description de l'objectif et des capacités de l'agent.

View File

@@ -28,4 +28,4 @@ Pour la configurer, vous pouvez exécuter `npm run build`.
Assurez-vous toujours que les tests sont réussis avant de valider les modifications. Vous pouvez exécuter les tests en lançant `npm run test`.
```
[Voir plus d'exemples de microagents généraux de dépôt ici.](https://github.com/All-Hands-AI/OpenHands/tree/main/.openhands/microagents)
[Voir plus d'exemples de microagents généraux de dépôt ici.](https://github.com/All-Hands-AI/OpenHands/tree/main/.openhands/microagents)

View File

@@ -34,4 +34,4 @@ Les bons prompts sont :
Plus votre prompt est précis et informatif, mieux OpenHands pourra vous aider.
Voir [Démarrer avec OpenHands](../getting-started) pour plus d'exemples de prompts utiles.
Voir [Démarrer avec OpenHands](../getting-started) pour plus d'exemples de prompts utiles.

View File

@@ -22,4 +22,4 @@ OpenHands prend en charge plusieurs environnements d'exécution différents :
- [Environnement distant OpenHands](./runtimes/remote.md) - Environnement d'exécution basé sur le cloud pour l'exécution parallèle (bêta).
- [Environnement Modal](./runtimes/modal.md) - Environnement d'exécution fourni par nos partenaires chez Modal.
- [Environnement Daytona](./runtimes/daytona.md) - Environnement d'exécution fourni par Daytona.
- [Environnement local](./runtimes/local.md) - Exécution directe sur votre machine locale sans Docker.
- [Environnement local](./runtimes/local.md) - Exécution directe sur votre machine locale sans Docker.

View File

@@ -5,4 +5,4 @@ title: Runtime Configuration
import { Redirect } from '@docusaurus/router';
<Redirect to="/modules/usage/runtimes-index" />
<Redirect to="/modules/usage/runtimes-index" />

View File

@@ -29,4 +29,4 @@ bash -i <(curl -sL https://get.daytona.io/openhands)
Une fois exécuté, OpenHands devrait fonctionner localement et être prêt à l'emploi.
Pour plus de détails et une initialisation manuelle, consultez le [README.md](https://github.com/All-Hands-AI/OpenHands/blob/main/openhands/runtime/impl/daytona/README.md) complet
Pour plus de détails et une initialisation manuelle, consultez le [README.md](https://github.com/All-Hands-AI/OpenHands/blob/main/openhands/runtime/impl/daytona/README.md) complet

View File

@@ -126,4 +126,4 @@ docker network create openhands-network
# Exécuter OpenHands dans le réseau isolé
docker run # ... \
--network openhands-network \
```
```

View File

@@ -71,4 +71,4 @@ Le Runtime Local est particulièrement utile pour :
- Les pipelines CI/CD où Docker n'est pas disponible.
- Les tests et le développement d'OpenHands lui-même.
- Les environnements où l'utilisation de conteneurs est restreinte.
- Les environnements où l'utilisation de conteneurs est restreinte.

View File

@@ -10,4 +10,4 @@ docker run # ...
-e RUNTIME=modal \
-e MODAL_API_TOKEN_ID="your-id" \
-e MODAL_API_TOKEN_SECRET="modal-api-key" \
```
```

View File

@@ -1,9 +1,9 @@
# OpenHands Remote Runtime
:::note
Ce runtime est spécifiquement conçu uniquement pour des fins d'évaluation d'agents via le
Ce runtime est spécifiquement conçu uniquement pour des fins d'évaluation d'agents via le
[harnais d'évaluation OpenHands](https://github.com/All-Hands-AI/OpenHands/tree/main/evaluation). Il ne doit pas être utilisé pour lancer des applications OpenHands en production.
:::
OpenHands Remote Runtime est actuellement en version bêta (lisez [ici](https://runtime.all-hands.dev/) pour plus de détails), il vous permet de lancer des runtimes
en parallèle dans le cloud. Remplissez [ce formulaire](https://docs.google.com/forms/d/e/1FAIpQLSckVz_JFwg2_mOxNZjCtr7aoBFI2Mwdan3f75J_TrdMS1JV2g/viewform) pour postuler si vous souhaitez l'essayer !
OpenHands Remote Runtime est actuellement en version bêta (lisez [ici](https://runtime.all-hands.dev/) pour plus de détails), il vous permet de lancer des runtimes
en parallèle dans le cloud. Remplissez [ce formulaire](https://docs.google.com/forms/d/e/1FAIpQLSckVz_JFwg2_mOxNZjCtr7aoBFI2Mwdan3f75J_TrdMS1JV2g/viewform) pour postuler si vous souhaitez l'essayer !

View File

@@ -65,4 +65,4 @@ Lors de la première invite, une erreur avec `Permission Denied` ou `PermissionE
* Changer le propriétaire du répertoire : `sudo chown <utilisateur>:<utilisateur> ~/.openhands-state`.
* ou mettre à jour les permissions du répertoire : `sudo chmod 777 ~/.openhands-state`
* ou le supprimer si vous n'avez pas besoin des données précédentes. OpenHands le recréera. Vous devrez ressaisir les paramètres LLM.
* Si vous montez un répertoire local, assurez-vous que votre `WORKSPACE_BASE` dispose des permissions nécessaires pour l'utilisateur exécutant OpenHands.
* Si vous montez un répertoire local, assurez-vous que votre `WORKSPACE_BASE` dispose des permissions nécessaires pour l'utilisateur exécutant OpenHands.

View File

@@ -22,4 +22,4 @@ OpenHandsは強力なフレームワークとライブラリの組み合わせ
## ライセンス
MIT [ライセンス](https://github.com/All-Hands-AI/OpenHands/blob/main/LICENSE)の下で配布されています。
MIT [ライセンス](https://github.com/All-Hands-AI/OpenHands/blob/main/LICENSE)の下で配布されています。

View File

@@ -20,4 +20,4 @@
https://github.com/All-Hands-AI/OpenHands/assets/38853559/f592a192-e86c-4f48-ad31-d69282d5f6ac
_`gpt-4-turbo-2024-04-09`を使用したCodeActAgentがデータサイエンスタスク線形回帰を実行する例_
_`gpt-4-turbo-2024-04-09`を使用したCodeActAgentがデータサイエンスタスク線形回帰を実行する例_

View File

@@ -49,4 +49,4 @@ _**免責事項**: バックエンドアーキテクチャは進行中の作業
6. 図をPNGおよびSVGファイルとしてエクスポートし、`docs/architecture`ディレクトリ内の既存の図を置き換えます。これは(例えば[PlantText](https://www.planttext.com/)で)行うことができます。
</div>
</details>
</details>

View File

@@ -124,4 +124,4 @@ OpenHandsランタイムは、機能を拡張しランタイム環境をカス
2. プラグイン登録:利用可能なプラグインは`ALL_PLUGINS`辞書に登録されます
3. プラグイン指定:プラグインは`Agent.sandbox_plugins: list[PluginRequirement]`に関連付けられます。ユーザーはランタイムの初期化時にロードするプラグインを指定できます
4. 初期化:プラグインはランタイムクライアントの起動時に非同期で初期化されます
5. 使用法ランタイムクライアントは初期化されたプラグインを使用して機能を拡張できますIPythonセルを実行するためのJupyterPlugin
5. 使用法ランタイムクライアントは初期化されたプラグインを使用して機能を拡張できますIPythonセルを実行するためのJupyterPlugin

View File

@@ -69,7 +69,7 @@ data = {
response = requests.post(url, headers=headers, json=data)
conversation = response.json()
print(f"Conversation Link: https://app.all-hands.dev/conversations/{conversation['conversation_id']}")
print(f"Conversation Link: https://app.all-hands.dev/conversations/{conversation['id']}")
print(f"Status: {conversation['status']}")
```
</details>
@@ -174,4 +174,4 @@ curl -X GET "https://app.all-hands.dev/api/conversations/{conversation_id}" \
APIはアカウントごとに10の同時会話の制限があります。ユースケースに応じてより高い制限が必要な場合は、[contact@all-hands.dev](mailto:contact@all-hands.dev)までお問い合わせください。
この制限を超えると、APIは429 Too Many Requestsレスポンスを返します。
この制限を超えると、APIは429 Too Many Requestsレスポンスを返します。

View File

@@ -28,4 +28,4 @@ OpenHands Cloudにリポジトリアクセス権を付与した後、リポジ
OpenHandsは以下の操作を行います
1. PRにコメントして、作業中であることを通知します。
2. タスクを実行します。
2. タスクを実行します。

View File

@@ -62,4 +62,4 @@ GitLabアカウントを使用する場合、OpenHandsは自動的にあなた
- 会話リスト 過去10日間に開始された最新10件の会話のみが表示されます。
- ワークスペース 会話ワークスペースは14日間保持されます。
- ランタイム ランタイムは30分間アクティブ「ウォーム」な状態を維持します。この期間後、会話を再開するには1〜2分かかる場合があります。
- ランタイム ランタイムは30分間アクティブ「ウォーム」な状態を維持します。この期間後、会話を再開するには1〜2分かかる場合があります。

View File

@@ -339,4 +339,4 @@ LLM大規模言語モデル設定オプションは、`config.toml`ファ
- `user_id`
- 型: `int`
- デフォルト: `1000`
- デフォルト: `1000`

View File

@@ -18,4 +18,4 @@ export MY_ENV_VAR="my value"
sudo apt-get update
sudo apt-get install -y lsof
cd frontend && npm install ; cd ..
```
```

View File

@@ -36,4 +36,4 @@ All Hands AIのサーバー上のデータについては、リクエストに
**1つのデータ** 1つのデータの削除を希望する場合、近日中にデータを提出した際にインターフェースに表示されるリンクとパスワードを使用してデータを削除するメカニズムを追加する予定です。
**すべてのデータ:** すべてのデータの削除を希望する場合、またはデータ提出時に受け取ったIDとパスワードをお持ちでない場合は、データを最初に提出した際に登録したメールアドレスから`contact@all-hands.dev`にお問い合わせください。
**すべてのデータ:** すべてのデータの削除を希望する場合、またはデータ提出時に受け取ったIDとパスワードをお持ちでない場合は、データを最初に提出した際に登録したメールアドレスから`contact@all-hands.dev`にお問い合わせください。

View File

@@ -90,4 +90,4 @@ OpenHandsはほぼすべてのコーディングタスクを支援できます
* 十分なコンテキストを提供する。
* 頻繁にコミットしてプッシュする。
OpenHandsを最大限に活用する方法についての詳細は、[プロンプトのベストプラクティス](./prompting/prompting-best-practices)をご覧ください。
OpenHandsを最大限に活用する方法についての詳細は、[プロンプトのベストプラクティス](./prompting/prompting-best-practices)をご覧ください。

View File

@@ -36,7 +36,7 @@ DockerでOpenHandsをCLIモードで実行するには
```bash
docker run -it \
--pull=always \
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.38-nikolaik \
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.37-nikolaik \
-e SANDBOX_USER_ID=$(id -u) \
-e SANDBOX_VOLUMES=$SANDBOX_VOLUMES \
-e LLM_API_KEY=$LLM_API_KEY \
@@ -45,10 +45,10 @@ docker run -it \
-v ~/.openhands-state:/.openhands-state \
--add-host host.docker.internal:host-gateway \
--name openhands-app-$(date +%Y%m%d%H%M%S) \
docker.all-hands.dev/all-hands-ai/openhands:0.38 \
docker.all-hands.dev/all-hands-ai/openhands:0.37 \
python -m openhands.core.cli
```
このコマンドはDocker内で対話型セッションを開始し、タスクを入力してOpenHandsからの応答を受け取ることができます。
`-e SANDBOX_USER_ID=$(id -u)`はDockerコマンドに渡され、サンドボックスユーザーがホストユーザーの権限と一致するようにします。これにより、エージェントがマウントされたワークスペースにroot所有のファイルを作成するのを防ぎます。
`-e SANDBOX_USER_ID=$(id -u)`はDockerコマンドに渡され、サンドボックスユーザーがホストユーザーの権限と一致するようにします。これにより、エージェントがマウントされたワークスペースにroot所有のファイルを作成するのを防ぎます。

View File

@@ -98,4 +98,4 @@ platform = "linux/amd64"
### 実行
トップレベルディレクトリで```make run```を実行してOpenHandsを起動します。
トップレベルディレクトリで```make run```を実行してOpenHandsを起動します。

View File

@@ -68,4 +68,4 @@
* *d*: openhandsワークスペースディレクトリ
* *c*: エージェント
* *l*: LLM設定config.tomlで事前定義
* *n*: セッション名(例:イベントストリーム名)
* *n*: セッション名(例:イベントストリーム名)

View File

@@ -71,4 +71,4 @@ OpenHandsでの開発が初めての場合は、次の順序に従うことを
1. 関連するドキュメントが変更を反映するように更新されている
2. 新機能が適切なREADMEファイルに文書化されている
3. APIの変更がサーバードキュメントに反映されている
4. ドキュメントが`/docs/DOC_STYLE_GUIDE.md`のスタイルガイドに従っている
4. ドキュメントが`/docs/DOC_STYLE_GUIDE.md`のスタイルガイドに従っている

View File

@@ -275,4 +275,4 @@ def codeact_user_response(state: State | None) -> str:
2. エージェントがユーザーとコミュニケーションを取ろうとした回数を確認する
3. エージェントが複数回試みた場合、諦めるオプションを提供する
この関数を使用することで、複数の評価実行にわたって一貫した動作を確保し、エージェントが人間の入力を待って立ち往生することを防ぐことができます。
この関数を使用することで、複数の評価実行にわたって一貫した動作を確保し、エージェントが人間の入力を待って立ち往生することを防ぐことができます。

View File

@@ -48,4 +48,4 @@ GitHub resolverは、動作をカスタマイズするために有効な[リポ
| `OPENHANDS_MAX_ITER` | 変数 | エージェントの反復回数の最大制限を設定 | `OPENHANDS_MAX_ITER=10` |
| `OPENHANDS_MACRO` | 変数 | リゾルバーを呼び出すためのデフォルトマクロをカスタマイズ | `OPENHANDS_MACRO=@resolveit` |
| `OPENHANDS_BASE_CONTAINER_IMAGE` | 変数 | カスタムサンドボックス([詳細](https://docs.all-hands.dev/modules/usage/how-to/custom-sandbox-guide) | `OPENHANDS_BASE_CONTAINER_IMAGE="custom_image"` |
| `TARGET_BRANCH` | 変数 | `main`以外のブランチにマージ | `TARGET_BRANCH="dev"` |
| `TARGET_BRANCH` | 変数 | `main`以外のブランチにマージ | `TARGET_BRANCH="dev"` |

View File

@@ -138,4 +138,4 @@ OpenHandsは提供された場合、自動的に`GITLAB_TOKEN`をシェル環境
- [プロンプティングのベストプラクティス](../prompting/prompting-best-practices)で説明されているように、最も正確で役立つ回答を得るために、リクエストを具体的にしてください。
- [LLMセクション](usage/llms/llms.md)で説明されているように、推奨モデルのいずれかを使用してください。
OpenHandsのGUIモードは、AIアシスタントとの対話をできるだけスムーズで直感的にするように設計されています。生産性を最大化するために、その機能を遠慮なく探索してください。
OpenHandsのGUIモードは、AIアシスタントとの対話をできるだけスムーズで直感的にするように設計されています。生産性を最大化するために、その機能を遠慮なく探索してください。

View File

@@ -33,7 +33,7 @@ DockerでヘッドレスモードでOpenHandsを実行するには
```bash
docker run -it \
--pull=always \
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.38-nikolaik \
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.37-nikolaik \
-e SANDBOX_USER_ID=$(id -u) \
-e SANDBOX_VOLUMES=$SANDBOX_VOLUMES \
-e LLM_API_KEY=$LLM_API_KEY \
@@ -43,7 +43,7 @@ docker run -it \
-v ~/.openhands-state:/.openhands-state \
--add-host host.docker.internal:host-gateway \
--name openhands-app-$(date +%Y%m%d%H%M%S) \
docker.all-hands.dev/all-hands-ai/openhands:0.38 \
docker.all-hands.dev/all-hands-ai/openhands:0.37 \
python -m openhands.core.main -t "write a bash script that prints hi"
```
@@ -55,4 +55,4 @@ docker run -it \
### 追加ログ
ヘッドレスモードですべてのエージェントアクションをログに記録するには、ターミナルで次のコマンドを実行します:`export LOG_ALL_EVENTS=true`
ヘッドレスモードですべてのエージェントアクションをログに記録するには、ターミナルで次のコマンドを実行します:`export LOG_ALL_EVENTS=true`

View File

@@ -58,17 +58,17 @@ OpenHandsを実行するには、最新のプロセッサと最低**4GB RAM**を
OpenHandsを実行する最も簡単な方法はDockerを使用することです。
```bash
docker pull docker.all-hands.dev/all-hands-ai/runtime:0.38-nikolaik
docker pull docker.all-hands.dev/all-hands-ai/runtime:0.37-nikolaik
docker run -it --rm --pull=always \
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.38-nikolaik \
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.37-nikolaik \
-e LOG_ALL_EVENTS=true \
-v /var/run/docker.sock:/var/run/docker.sock \
-v ~/.openhands-state:/.openhands-state \
-p 3000:3000 \
--add-host host.docker.internal:host-gateway \
--name openhands-app \
docker.all-hands.dev/all-hands-ai/openhands:0.38
docker.all-hands.dev/all-hands-ai/openhands:0.37
```
OpenHandsは http://localhost:3000 で実行されています!
@@ -117,4 +117,4 @@ SemVerを使用しているため、`0.9`は自動的に最新の`0.9.x`リリ
開発ワークフローについては、[Development.md](https://github.com/All-Hands-AI/OpenHands/blob/main/Development.md)を参照してください。
問題がありますか?[トラブルシューティングガイド](https://docs.all-hands.dev/modules/usage/troubleshooting)をご確認ください。
問題がありますか?[トラブルシューティングガイド](https://docs.all-hands.dev/modules/usage/troubleshooting)をご確認ください。

View File

@@ -26,4 +26,4 @@
### ブラウザ
- OpenHandsがウェブサイトを閲覧するために使用します。
- このブラウザは非対話型です。
- このブラウザは非対話型です。

View File

@@ -35,4 +35,4 @@ OpenHandsを実行する際、[docker runコマンド](../installation#running-o
```
LLM_API_VERSION="<api-version>" # 例: "2024-02-15-preview"
```
```

View File

@@ -133,4 +133,4 @@ frequency_penalty = 0.0
:::note
カスタムLLM設定は、`main.py`または`cli.py`を介して開発モードでOpenHandsを使用する場合にのみ利用可能です。`docker run`を介して実行する場合は、標準の設定オプションを使用してください。
:::
:::

View File

@@ -26,4 +26,4 @@ VERTEXAI_LOCATION="<あなたのgcpロケーション>"
その後、OpenHandsのUI設定で以下を設定します
- `LLM Provider``VertexAI`に設定
- `LLM Model`を使用するモデルに設定
モデルがリストにない場合は、`Advanced`オプションを切り替えて、`Custom Model`に入力してくださいvertex_ai/&lt;model-name&gt;)。
モデルがリストにない場合は、`Advanced`オプションを切り替えて、`Custom Model`に入力してくださいvertex_ai/&lt;model-name&gt;)。

View File

@@ -16,4 +16,4 @@ Groqのチャット完了エンドポイントは[ほぼOpenAI互換](https://co
2. 以下を設定する:
- `Custom Model`に接頭辞`openai/`と使用するモデル名を組み合わせて設定(例:`openai/llama3-70b-8192`
- `Base URL``https://api.groq.com/openai/v1`に設定
- `API Key`にGroq APIキーを設定
- `API Key`にGroq APIキーを設定

View File

@@ -17,4 +17,4 @@ OpenHandsでLiteLLMプロキシを使用するには、以下の手順が必要
サポートされているモデルはLiteLLMプロキシの設定によって異なります。OpenHandsはLiteLLMプロキシが対応するように設定されているあらゆるモデルをサポートします。
利用可能なモデルとその名前のリストについては、LiteLLMプロキシの設定を参照してください。
利用可能なモデルとその名前のリストについては、LiteLLMプロキシの設定を参照してください。

View File

@@ -89,4 +89,4 @@ num_retries = 4
retry_min_wait = 5
retry_max_wait = 30
retry_multiplier = 2
```
```

View File

@@ -80,4 +80,4 @@ OpenHandsが実行されたら、設定を通じてOpenHands UIで以下を設
2. 以下を設定します:
- `Custom Model``openai/<served-model-name>`(例:`openai/openhands-lm-32b-v0.1`)に設定
- `Base URL``http://host.docker.internal:8000`に設定
- `API key`をモデル提供時に設定したのと同じ文字列(例:`mykey`)に設定
- `API key`をモデル提供時に設定したのと同じ文字列(例:`mykey`)に設定

View File

@@ -22,4 +22,4 @@ OpenAIプロキシを使用している場合、OpenHandsのUI設定で
2. 以下を設定する:
- `Custom Model`をopenai/&lt;model-name&gt;に設定(例:`openai/gpt-4o`またはopenai/&lt;proxy-prefix&gt;/&lt;model-name&gt;
- `Base URL`をOpenAIプロキシのURLに設定
- `API Key`をOpenAI APIキーに設定
- `API Key`をOpenAI APIキーに設定

View File

@@ -9,4 +9,4 @@ OpenHandsを実行する際、設定画面から以下の項目を設定する
* `LLM Model`を使用するモデルに設定
[OpenRouterモデルの完全なリストはこちらで確認できます](https://openrouter.ai/models)。
モデルがリストにない場合は、`Advanced`オプションを切り替えて、`Custom Model`に入力してくださいopenrouter/&lt;model-name&gt; のように `openrouter/anthropic/claude-3.5-sonnet`)。
* `API Key`にOpenRouterのAPIキーを設定
* `API Key`にOpenRouterのAPIキーを設定

View File

@@ -93,4 +93,4 @@ OpenHandsが起動すると、次のことが行われます
1. OpenHandsは呼び出しを適切なMCPサーバーにルーティングする
2. サーバーはリクエストを処理し、レスポンスを返す
3. OpenHandsはレスポンスを観察結果に変換し、エージェントに提示する
3. OpenHandsはレスポンスを観察結果に変換し、エージェントに提示する

View File

@@ -33,4 +33,4 @@ triggers:
ユーザーが魔法の言葉を言いました。「それはおいしかった!」と応答してください。
```
[公式OpenHandsリポジトリでキーワードによってトリガーされるマイクロエージェントの例を見る](https://github.com/All-Hands-AI/OpenHands/tree/main/microagents)
[公式OpenHandsリポジトリでキーワードによってトリガーされるマイクロエージェントの例を見る](https://github.com/All-Hands-AI/OpenHands/tree/main/microagents)

View File

@@ -36,4 +36,4 @@ some-repository/
| マイクロエージェントの種類 | 必須 |
|--------------------------|------|
| `一般リポジトリマイクロエージェント` | いいえ |
| `キーワードトリガーマイクロエージェント` | はい |
| `キーワードトリガーマイクロエージェント` | はい |

View File

@@ -47,4 +47,4 @@ OpenHandsへの貢献方法の具体的な手順については、[CONTRIBUTING.
- 新しいマイクロエージェントファイル。
- 必要に応じて更新されたドキュメント。
- エージェントの目的と機能の説明。
- エージェントの目的と機能の説明。

View File

@@ -28,4 +28,4 @@
変更をコミットする前に、常にテストが合格していることを確認してください。`npm run test`を実行してテストを実行できます。
```
[一般リポジトリマイクロエージェントの詳細な例はこちらをご覧ください。](https://github.com/All-Hands-AI/OpenHands/tree/main/.openhands/microagents)
[一般リポジトリマイクロエージェントの詳細な例はこちらをご覧ください。](https://github.com/All-Hands-AI/OpenHands/tree/main/.openhands/microagents)

View File

@@ -34,4 +34,4 @@ OpenHands AIソフトウェア開発者と連携する際、明確で効果的
プロンプトが正確で情報量が多いほど、OpenHandsはより良くサポートできます。
役立つプロンプトの例については、[OpenHandsの使い方](../getting-started)をご覧ください。
役立つプロンプトの例については、[OpenHandsの使い方](../getting-started)をご覧ください。

Some files were not shown because too many files have changed in this diff Show More