Mark Paronyan
b622ccae7b
refactor: declare explicit public API in package __init__ modules
2026-10-03 19:43:59 +03:00
Mark Paronyan
306d8fbde4
refactor: remove unused imports
2026-10-03 19:43:58 +03:00
Mark Paronyan
61caa20524
style: sort imports in agent and remaining compute modules
2026-10-02 12:43:26 +03:00
Mark Paronyan
06899c92fc
refactor: use iterable unpacking instead of concatenation
2026-10-01 19:57:46 +03:00
Mark Paronyan
2dc7479d11
style: remove f-strings without placeholders
2026-10-01 19:57:46 +03:00
Mark Paronyan
c9416d2569
style: remove quotes from type annotations
2026-10-01 19:57:45 +03:00
Mark Paronyan
396407827e
style: drop redundant open mode arguments
2026-10-01 19:57:44 +03:00
Mark Paronyan
d356a68987
refactor: replace aliased OSError subclasses
2026-10-01 19:57:44 +03:00
Mark Paronyan
0416ad8228
style: sort __all__ declarations
2026-10-01 19:57:42 +03:00
Mark Paronyan
c5b5091f5e
refactor: use explicit conversion in f-strings
2026-10-01 19:57:41 +03:00
Mark Paronyan
9e5ab02147
style: remove unused noqa directives
2026-10-01 19:57:40 +03:00
Jeremy Grossmann
726da8383a
Merge branch '3.1' into mypy-agent-gns3_copilot-plus
2026-09-29 13:20:27 +02:00
Jeremy Grossmann
468ad4e85f
Merge branch '3.1' into mypy-agent
2026-09-29 13:19:30 +02:00
Jeremy Grossmann
4bcaf596df
Merge pull request #2910 from markparonyan/mypy-agent-copilot-utils
...
fix(typing): resolve mypy errors in agent.gns3_copilot.utils
2026-09-29 12:48:03 +02:00
Jeremy Grossmann
b73128d791
Merge branch '3.1' into mypy-agent-copilot-tools-analysis
2026-09-29 12:45:07 +02:00
Jeremy Grossmann
77a323e1e8
Merge branch '3.1' into mypy-agent-copilot-tools-nornir
2026-09-29 12:38:40 +02:00
Jeremy Grossmann
7b40064658
Merge branch '3.1' into mypy-agent-copilot-skills
2026-09-29 12:30:40 +02:00
Jeremy Grossmann
eb9a9ae19a
Merge pull request #2904 from markparonyan/mypy-agent-web-wireshark
...
fix(typing): resolve mypy errors in agent.web_wireshark
2026-09-29 12:27:28 +02:00
Jeremy Grossmann
6aac6c8e34
Merge pull request #2906 from markparonyan/mypy-agent-copilot-client
...
fix(typing): resolve mypy errors in agent.gns3_copilot.gns3_client
2026-09-29 12:21:33 +02:00
Mark Paronyan
780b7f2ab6
fix(typing): resolve mypy errors in agent node lifecycle tools
2026-09-29 09:46:32 +03:00
Mark Paronyan
bc27c4814f
fix(typing): resolve mypy errors in agent.gns3_copilot.gns3_client.api_handlers
2026-09-29 09:46:31 +03:00
Mark Paronyan
9882eba088
fix(typing): resolve mypy errors in agent.gns3_copilot.chat_sessions_repository
2026-09-29 09:46:31 +03:00
Mark Paronyan
07560b0026
fix(typing): resolve mypy errors in agent
2026-09-29 09:46:31 +03:00
Mark Paronyan
c154d1c41e
fix(typing): resolve mypy errors in agent.web_wireshark.docker_client
2026-09-29 09:23:01 +03:00
Mark Paronyan
d25cb5cdca
fix(typing): resolve mypy errors in agent.mcp.appliances
2026-09-29 09:23:01 +03:00
Mark Paronyan
2d712e0a90
fix(typing): resolve mypy errors in agent.gns3_copilot.utils.custom_netmiko.scripts.list_netmiko_telnet_devices
2026-09-29 09:23:01 +03:00
Mark Paronyan
4ae6b5338d
fix(typing): resolve mypy errors in agent.gns3_copilot.utils.parse_tool_content
2026-09-29 08:52:38 +03:00
Mark Paronyan
5cb1b8e3d2
fix(typing): resolve mypy errors in agent.gns3_copilot.utils.message_converters
2026-09-29 08:52:37 +03:00
Mark Paronyan
cd7f5ab8e9
fix(typing): resolve mypy errors in agent.gns3_copilot.agent.model_factory
2026-09-29 08:52:33 +03:00
Mark Paronyan
a251ca73ac
fix(typing): resolve mypy errors in agent.gns3_copilot.agent.context_manager
2026-09-29 08:52:33 +03:00
Mark Paronyan
f8144494f6
fix(typing): resolve mypy errors in agent.gns3_copilot.tools_v2.vpcs_tools_netmiko
2026-09-29 08:48:02 +03:00
Mark Paronyan
d2fd238383
fix(typing): resolve mypy errors in agent.gns3_copilot.tools_v2.gns3_packet_filter
2026-09-29 08:48:02 +03:00
Mark Paronyan
67f68c9676
fix(typing): resolve mypy errors in agent.gns3_copilot.tools_v2.packet_analysis_tool
2026-09-29 08:48:02 +03:00
Mark Paronyan
d6ae597f36
fix(typing): resolve mypy errors in agent.gns3_copilot.skills.manager
2026-09-29 08:48:01 +03:00
Mark Paronyan
35b360ca75
fix(typing): resolve mypy errors in agent.gns3_copilot.tools_v2.display_tools_nornir
2026-09-29 08:48:01 +03:00
Mark Paronyan
c7c7e3b583
fix(typing): resolve mypy errors in agent.gns3_copilot.skills.loader
2026-09-29 08:48:01 +03:00
Mark Paronyan
e8bff79370
fix(typing): resolve mypy errors in agent.gns3_copilot.tools_v2.config_tools_nornir
2026-09-29 08:48:01 +03:00
Mark Paronyan
97f71269d3
fix(typing): resolve mypy errors in agent.gns3_copilot.gns3_client.project_inventory
2026-09-29 08:48:00 +03:00
Mark Paronyan
890093de01
fix(typing): resolve mypy errors in agent.gns3_copilot.gns3_client.connector_factory
2026-09-29 08:48:00 +03:00
Mark Paronyan
7f2d1bc789
fix(typing): resolve mypy errors in agent.web_wireshark.manager
2026-09-29 08:41:57 +03:00
Mark Paronyan
81d77bb689
fix(typing): resolve mypy errors in agent.web_wireshark.stats
2026-09-29 08:41:57 +03:00
Mark Paronyan
755556c146
fix(typing): resolve mypy errors in agent.web_wireshark.manage_wireshark
2026-09-29 08:41:57 +03:00
Jeremy Grossmann
35e1abcaf2
Merge pull request #2895 from markparonyan/mypy-agent-agent-service
...
fix(typing): resolve mypy errors in agent.gns3_copilot.agent_service
2026-09-28 20:56:12 +02:00
Mark Paronyan
644ed63334
fix(typing): resolve mypy errors in agent.gns3_copilot.agent_service
2026-09-28 21:47:26 +03:00
Mark Paronyan
6ffa39642f
fix(typing): resolve mypy errors in agent.mcp
2026-09-28 21:41:58 +03:00
Mark Paronyan
a0450b6bce
refactor: ruff autofixes
2026-09-27 15:55:10 +03:00
Mark Paronyan
8dfe05df3d
chore: justfile with mypy, ruff, pytest checks
2026-09-27 15:43:18 +03:00
YueGuobin
a841175fbf
feat(copilot): make start_gns3_node immediate-return, add wait_seconds tool
...
The waiting variant blocked on a fixed progress bar (up to 120s) even
when every start command had already failed (e.g. the uBridge >= 1.2.3
409), burying the error behind two minutes of silence. Drop it: the
single start_gns3_node now sends the commands and returns per-node
results immediately (GNS3StartNodeQuickTool kept as an alias). Boot
waiting moves to a dedicated wait_seconds tool the agent calls
explicitly between start and status checks, with a 600s ceiling and
liveness logging every 5s.
2026-09-05 22:52:02 +08:00
YueGuobin
f95d4c7a4e
fix: update link_capture_download and symbol_get tool descriptions for tickets
...
The tool descriptions still advertised the removed "short-lived JWT"
and gave no guidance against URL reconstruction. Align them with
node_console's wording: run the returned curl_command verbatim, never
rebuild the URL or copy the ticket by hand, re-call the tool once the
10-minute ticket has expired.
2026-08-29 01:13:33 +08:00
YueGuobin
d1edfbe5e8
fix: replace Bearer JWTs with path-bound access tickets in MCP download tools
...
link_capture_download and get_symbol embedded a 10-min JWT in the
Authorization header of the curl command they return; LLM clients
retyping that command corrupted the long token — the same failure
class as the console WebSocket URLs fixed in the previous commit.
Generalize the ticket store (console_tickets.py -> access_tickets.py,
ConsoleTicketService -> AccessTicketService): a ticket now binds to
either a node's console endpoints (WebSocket, matched against route
path params) or one exact REST resource path (capture file, symbol
image). The two binding modes are isolated — a node-bound ticket
cannot authenticate a REST resource and vice versa.
get_user_from_token redeems path-bound tickets through the existing
token parameter / Bearer header, matched exactly against
request.url.path, then reuses the shared user lookup and token_version
revocation checks. Download URLs embed ?token=<ticket> and the curl
commands no longer carry a Bearer header.
2026-08-29 01:10:19 +08:00