{"id":24109,"library":"netconf-console2","title":"netconf-console2","description":"Netconf client CLI tool and interactive console for managing NETCONF-enabled devices. Version 3.0.1 provides support for YANG-based operations, SSH and TLS transport, and an interactive shell. Release cadence is irregular.","status":"active","version":"3.0.1","language":"python","source_language":"en","source_url":"https://github.com/robshakir/netconf-console2","tags":["netconf","yang","cli","network-automation"],"install":[{"cmd":"pip install netconf-console2","lang":"bash","label":"Latest release"}],"dependencies":[],"imports":[{"note":"Package uses netconf.console submodule, not underscore.","wrong":"from netconf_console import connect","symbol":"connect","correct":"from netconf.console import connect"},{"note":"NetconfSession is in netconf.session, not netconf directly.","wrong":"from netconf import NetconfSession","symbol":"NetconfSession","correct":"from netconf.session import NetconfSession"}],"quickstart":{"code":"import os\nfrom netconf.console import connect\n\nhost = os.environ.get('NETCONF_HOST', '192.168.1.1')\nport = int(os.environ.get('NETCONF_PORT', '830'))\nusername = os.environ.get('NETCONF_USER', 'admin')\npassword = os.environ.get('NETCONF_PASS', 'admin')\n\nwith connect(host=host, port=port, username=username, password=password) as session:\n    capabilities = session.server_capabilities\n    print('Connected. Capabilities:', capabilities)","lang":"python","description":"Connect to a NETCONF device and retrieve server capabilities."},"warnings":[{"fix":"Update imports to use netconf.console; Python 2 users must stay on <3.0.0.","message":"Version 3.0.0 dropped support for Python 2 and changed import paths (netconf.console instead of netconf_console).","severity":"breaking","affected_versions":">=3.0.0"},{"fix":"Pass source as a plain string, e.g., session.get_config('running').","message":"The 'get_config' method's 'source' parameter now expects a string like 'running' instead of a dictionary. Old contract { 'source': 'running' } is deprecated.","severity":"deprecated","affected_versions":">=3.0.0"},{"fix":"Perform all NETCONF operations within the 'with' block.","message":"When using 'connect' inside a 'with' block, the session is automatically closed. Reusing the session after exiting the block raises an error.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"Use 'from netconf.console import connect' instead of 'from netconf_console import connect'.","cause":"The module was renamed from netconf_console to netconf.console in version 3.0.0.","error":"ImportError: No module named netconf_console"},{"fix":"Check device capabilities before calling get_schema, or use a different operation like get_config.","cause":"The device does not support the 'get-schema' capability required by some operations.","error":"ncclient.operations.errors.MissingCapabilityError: ... get-schema not advertised"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}