一键导入
一键导入
Deep research with structured reports and charts. ONLY use when the user explicitly requests research/analysis, or needs data visualization with charts, or quantitative/comparative analysis across multiple sources. Do NOT use for simple questions or quick lookups.
Search the web and fetch content from URLs for current information, news, and research topics.
Web browser automation for tasks requiring UI interaction, login-protected pages, or human-like browsing when APIs are insufficient.
Autonomous coding agent. Delegate any task that involves understanding, writing, or running code — from a GitHub issue, a bug report, or a user request. It explores, implements, and verifies on its own.
Create hand-drawn style diagrams and flowcharts using Excalidraw
Manage GitHub issues, PRs, branches, and repositories via OAuth (3LO). For reading issues or PR details, not for deep code analysis — delegate that to code-agent.
| name | excel-spreadsheets |
| description | Create, modify, and manage Excel spreadsheets. |
| Tool | Use When |
|---|---|
create_excel_spreadsheet | User asks to create/generate a NEW spreadsheet |
modify_excel_spreadsheet | User asks to edit/update an EXISTING spreadsheet |
list_my_excel_spreadsheets | User asks what spreadsheets are available |
read_excel_spreadsheet | User wants to download or read spreadsheet contents |
preview_excel_sheets | Check actual sheet appearance when editing |
preview_excel_sheets to check current layout.preview_excel_sheets to verify.(1,234) — not minus -1,234.$#,##0 format. Specify units in headers (e.g., "Revenue ($mm)").0.0% (one decimal place)."2024" not "2,024")."-" using a custom number format.# Example: professional number formatting
from openpyxl.styles import numbers
ws['B2'].number_format = '$#,##0' # Currency
ws['C2'].number_format = '0.0%' # Percentage
ws['D2'].number_format = '#,##0;(#,##0)' # Negative in parentheses
ws['E2'].number_format = '@' # Year as text
ws['F2'].number_format = '#,##0;(#,##0);"-"' # Zeros as dash
When building financial models, apply these conventions:
| Color | Hex | Usage |
|---|---|---|
| Blue text | 0000FF | Hardcoded inputs and assumptions |
| Black text | 000000 | All formulas and calculations |
| Green text | 008000 | Links pulling from other worksheets |
| Yellow background | FFFF00 | Key assumptions needing attention |
from openpyxl.styles import Font, PatternFill
ws['B2'].font = Font(name='Arial', color='0000FF') # Blue: input
ws['B3'].font = Font(name='Arial', color='000000') # Black: formula
ws['B4'].font = Font(name='Arial', color='008000') # Green: cross-sheet link
ws['B5'].fill = PatternFill('solid', fgColor='FFFF00') # Yellow bg: key assumption
from openpyxl.drawing.image import Image
ws.add_image(Image('file.png'), 'E1')
wb = Workbook(), active sheet as ws = wb.active (create), or loaded as wb (modify). Do NOT include Workbook() or wb.save().ws['B10'] = totalws['B10'] = '=SUM(B2:B9)'=B5*(1+$B$6) not =B5*1.05).Create a new Excel spreadsheet using openpyxl code.
| Parameter | Type | Required | Description |
|---|---|---|---|
python_code | str | Yes | Python code using openpyxl (see Code Rules above) |
spreadsheet_name | str | Yes | Filename without extension (letters, numbers, hyphens only) |
Example tool_input:
{
"python_code": "ws.title = 'Sales'\nws['A1'] = 'Quarter'\nws['B1'] = 'Revenue'\nfor i, (q, r) in enumerate(zip(['Q1','Q2','Q3','Q4'], [100,150,130,180]), start=2):\n ws[f'A{i}'] = q\n ws[f'B{i}'] = r",
"spreadsheet_name": "quarterly-sales"
}
WARNING: Parameter is spreadsheet_name, NOT filename or name.
Modify an existing spreadsheet and save with a new name.
| Parameter | Type | Required | Description |
|---|---|---|---|
source_name | str | Yes | Existing spreadsheet name (without .xlsx) |
output_name | str | Yes | New output name (MUST differ from source) |
python_code | str | Yes | Python code to modify the spreadsheet |
Example tool_input:
{
"source_name": "quarterly-sales",
"output_name": "quarterly-sales-v2",
"python_code": "ws = wb.active\nws['B6'] = '=SUM(B2:B5)'"
}
List all spreadsheets in workspace. No parameters needed.
Retrieve a specific spreadsheet for download.
| Parameter | Type | Required |
|---|---|---|
spreadsheet_name | str | Yes |
Get sheet screenshots for visual inspection before editing.
| Parameter | Type | Required | Description |
|---|---|---|---|
spreadsheet_name | str | Yes | Spreadsheet name without extension |
sheet_names | list[str] | Yes | Sheet names to preview (empty list [] for all sheets) |
Sequential Execution Required: Run modification tools sequentially, never in parallel (prevents race conditions on S3 file read/write).
When to Use:
Before Modifying: Always use preview_excel_sheets first to see the current layout.
CRITICAL — Formulas, Not Hardcoded Values:
ws['B10'] = total. Right: ws['B10'] = '=SUM(B2:B9)'Professional Formatting:
Financial Model Color Coding (when applicable):
Filenames: Letters, numbers, hyphens only (e.g., "Q4-sales.xlsx")
Available Libraries: openpyxl, matplotlib, pandas, numpy (seaborn NOT available)
Images: from openpyxl.drawing.image import Image; ws.add_image(Image('file.png'), 'E1')
QA: Always use preview_excel_sheets after creation to verify appearance.