@fre4x/jules 1.0.30 → 1.0.42

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/README.md +36 -39
  2. package/dist/index.js +46200 -25
  3. package/package.json +5 -5
  4. package/dist/__tests__/julesApiClient.test.d.ts +0 -2
  5. package/dist/__tests__/julesApiClient.test.d.ts.map +0 -1
  6. package/dist/__tests__/julesApiClient.test.js +0 -53
  7. package/dist/__tests__/julesApiClient.test.js.map +0 -1
  8. package/dist/__tests__/toolRegistration.test.d.ts +0 -2
  9. package/dist/__tests__/toolRegistration.test.d.ts.map +0 -1
  10. package/dist/__tests__/toolRegistration.test.js +0 -21
  11. package/dist/__tests__/toolRegistration.test.js.map +0 -1
  12. package/dist/constants.d.ts +0 -3
  13. package/dist/constants.d.ts.map +0 -1
  14. package/dist/constants.js +0 -3
  15. package/dist/constants.js.map +0 -1
  16. package/dist/index.d.ts +0 -3
  17. package/dist/index.d.ts.map +0 -1
  18. package/dist/index.js.map +0 -1
  19. package/dist/mock.d.ts +0 -43
  20. package/dist/mock.d.ts.map +0 -1
  21. package/dist/mock.js +0 -60
  22. package/dist/mock.js.map +0 -1
  23. package/dist/schemas/julesSchemas.d.ts +0 -60
  24. package/dist/schemas/julesSchemas.d.ts.map +0 -1
  25. package/dist/schemas/julesSchemas.js +0 -61
  26. package/dist/schemas/julesSchemas.js.map +0 -1
  27. package/dist/services/julesApiClient.d.ts +0 -17
  28. package/dist/services/julesApiClient.d.ts.map +0 -1
  29. package/dist/services/julesApiClient.js +0 -63
  30. package/dist/services/julesApiClient.js.map +0 -1
  31. package/dist/tools/approvePlan.d.ts +0 -3
  32. package/dist/tools/approvePlan.d.ts.map +0 -1
  33. package/dist/tools/approvePlan.js +0 -44
  34. package/dist/tools/approvePlan.js.map +0 -1
  35. package/dist/tools/createSession.d.ts +0 -3
  36. package/dist/tools/createSession.d.ts.map +0 -1
  37. package/dist/tools/createSession.js +0 -62
  38. package/dist/tools/createSession.js.map +0 -1
  39. package/dist/tools/listSessions.d.ts +0 -3
  40. package/dist/tools/listSessions.d.ts.map +0 -1
  41. package/dist/tools/listSessions.js +0 -71
  42. package/dist/tools/listSessions.js.map +0 -1
  43. package/dist/tools/listSources.d.ts +0 -3
  44. package/dist/tools/listSources.d.ts.map +0 -1
  45. package/dist/tools/listSources.js +0 -70
  46. package/dist/tools/listSources.js.map +0 -1
package/README.md CHANGED
@@ -1,71 +1,68 @@
1
- # Jules MCP Server
1
+ # jules The Coding Agent Bridge
2
2
 
3
- An MCP server implementation for [Jules API](https://developers.google.com/jules/api), allowing LLMs to interact directly with your automated Jules workflows.
3
+ > *Autonomous code changes, PR generation, and session management. The swarm's hands.*
4
4
 
5
- ## Prerequisites
5
+ Part of **[FRE4X-B1TE](../)** — a monorepo of MCP servers built for autonomous agents.
6
6
 
7
- 1. **Jules API Key**: Get your API Key from the Jules [Settings page](https://jules.google.com/settings#api).
8
- * *Note: Currently, Jules is migrating its authentication methods. If you receive a `401 Unauthorized` indicating "API keys are not supported by this API," you may need to wait for further updates from the Jules platform or supply an OAuth2 Token in place of the API key if supported.*
7
+ [Google Jules](https://jules.google.com/) is an autonomous coding agent. This B1TE exposes its full API as MCP tools — so your agent can spawn Jules sessions, approve plans, and get PRs merged without a human in the loop.
9
8
 
10
- ## Installation & Usage
9
+ ## Tools
11
10
 
12
- You can use the server directly via `npx` without installing it globally:
11
+ | Tool | What it does |
12
+ |------|-------------|
13
+ | `jules_list_sources` | List connected GitHub repos available as sources |
14
+ | `jules_create_session` | Start a new Jules coding session with a prompt, source, and optional config |
15
+ | `jules_list_sessions` | List all sessions and their status (e.g. PR links) |
16
+ | `jules_approve_plan` | Approve a session's execution plan (when `requirePlanApproval=true`) |
13
17
 
14
- ```bash
15
- npx jules-mcp
16
- ```
18
+ ### `jules_create_session` parameters
17
19
 
18
- ### Environment Variables
20
+ | Parameter | Type | Description |
21
+ |-----------|------|-------------|
22
+ | `source` | string | Source resource name, e.g. `sources/github/owner/repo` |
23
+ | `title` | string | Session title |
24
+ | `prompt` | string | Task description for Jules |
25
+ | `startingBranch` | string | Branch to start from (default: `main`) |
26
+ | `automationMode` | string | `AUTO_CREATE_PR` or `NONE` (default: `NONE`) |
27
+ | `requirePlanApproval` | boolean | If true, pause for `jules_approve_plan` before executing (default: false) |
19
28
 
20
- The server requires the following environment variables:
29
+ ## Requirements
21
30
 
22
- - `JULES_API_KEY`: Your Jules API Key or Authentication Token.
31
+ A [Jules API key](https://jules.google.com/settings#api) set as `JULES_API_KEY`.
23
32
 
24
- ## Configuration for Claude Desktop
33
+ ## Mock Mode
25
34
 
26
- To use this server with the Claude Desktop app, you need to add it to your configuration file.
35
+ Run without an API key (returns fixture data of identical shape):
27
36
 
28
- **Config file locations:**
29
- - **macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`
30
- - **Windows**: `%APPDATA%\Claude\claude_desktop_config.json`
37
+ ```bash
38
+ MOCK=true npx @fre4x/jules
39
+ ```
31
40
 
32
- Add the following to your configuration, replacing `<YOUR_API_KEY>` with your actual Jules API key:
41
+ ## Deploy
33
42
 
34
43
  ```json
35
44
  {
36
45
  "mcpServers": {
37
46
  "jules": {
38
47
  "command": "npx",
39
- "args": [
40
- "-y",
41
- "jules-mcp"
42
- ],
48
+ "args": ["-y", "@fre4x/jules"],
43
49
  "env": {
44
- "JULES_API_KEY": "<YOUR_API_KEY>"
50
+ "JULES_API_KEY": "your_api_key_here"
45
51
  }
46
52
  }
47
53
  }
48
54
  }
49
55
  ```
50
56
 
51
- ## Available Tools
52
-
53
- The server implements the following tools:
54
-
55
- - `jules_list_sources`: Find the IDs of sources (e.g., connected GitHub repos) you can interact with.
56
- - `jules_create_session`: Start a new Jules coding session with a specific prompt and source context.
57
- - `jules_list_sessions`: Check the status and output links (e.g., Pull Requests) of your sessions.
58
- - `jules_approve_plan`: Approve a session's execution plan (if it was created with `requirePlanApproval=true`).
59
-
60
57
  ## Development
61
58
 
62
59
  ```bash
63
- # Install dependencies
64
60
  npm install
61
+ npm run dev # tsx, no build
62
+ npm run build # esbuild → dist/
63
+ npm test # vitest unit tests
64
+ ```
65
65
 
66
- # Build the project
67
- npm run build
66
+ ## License
68
67
 
69
- # Run via MCP Inspector for testing
70
- npm run inspector
71
- ```
68
+ MIT **WE ARE THE FRE4X.**