# swissco CLI

Données d'entreprises suisses depuis le terminal: registre du commerce, FOSC, marchés publics, FINMA, GLEIF et ARAMIS en une commande.

## Installation

Lancez-le une fois sans l'installer, ou ajoutez-le de façon permanente:

`uvx swissco --help # run without installing pip install swissco # or install via pip`

Requiert Python 3.14 ou plus récent. Publié sur PyPI sous le nom [swissco](https://pypi.org/project/swissco/).

## Commandes

### swissco lookup \<UID>

Fiche complète du registre pour une entreprise: nom, IDE, forme juridique, commune, adresse, but. Avec --finma le type d'autorisation FINMA et la catégorie de surveillance sont ajoutés, ou avec --lei le Legal Entity Identifier et la structure de groupe GLEIF.

`$ swissco lookup CHE-105.805.080 Name Nespresso SA UID CHE-105.805.080 Legal form AG Municipality Lausanne Canton VD`

### swissco search \<query>

Recherche par raison sociale ou texte du but. Filtrage par canton ou forme juridique.

`$ swissco search "solar energy" --canton BE --format csv uid,name,legal_form,municipality,canton CHE-114.526.940,BKW Energie AG,AG,Bern,BE CHE-334.713.622,Solarkraft Berner Oberland AG,AG,Frutigen,BE`

### swissco publications

Publications de la FOSC sur une période, filtrables par canton et type d'événement.

`$ swissco publications --since 2026-09-01 --canton ZH --type NEWLY_REGISTERED uid name event CHE-248.357.133 Zurich AI Labs GmbH NEWLY_REGISTERED CHE-248.358.971 Helvetic Solar Solutions AG NEWLY_REGISTERED`

### swissco events \<UID>

L'historique complet d'une entreprise dans la gazette.

`$ swissco events CHE-105.805.080 date event summary 2020-03-12 MUTATION Seat transfer to Lausanne 2018-06-01 CAPITAL_INCREASED Share capital CHF 200'000 → 250'000 2005-11-03 NEWLY_REGISTERED Initial registration`

### swissco tenders

Parcourir les marchés publics sur simap par canton et par date. Filtrage par type de publication: appels d'offres, adjudications, gré à gré.

`$ swissco tenders --canton ZH --since 2026-08-01 --type tender title buyer canton publication_date Sanierung Schulhaus Mühlebach Baudirektion Kanton Zürich ZH 2026-08-15 IT-Infrastruktur 2027–2031 Universitätsspital Zürich ZH 2026-08-12`

### swissco vendor \<query>

Rechercher une entreprise dans le répertoire des fournisseurs simap. L'IDE est vérifié contre le uidNo du répertoire.

`$ swissco vendor CHE-409.633.691 Name Implenia Schweiz AG UID CHE-409.633.691 City Dietlikon Canton ZH Company size large`

### swissco finma

Lister ou rechercher des établissements sur la liste FINMA des banques et négociants en valeurs mobilières autorisés, rattachés à un IDE. Filtrage par type d'autorisation, catégorie de surveillance ou nom.

`$ swissco finma --category 3 name city licence_type category uid Zürcher Kantonalbank Zürich Bank 3 CHE-105.842.028 Banque Cantonale Vaudoise Lausanne Bank 3 CHE-105.925.867`

### swissco lei \<UID>

Rechercher le Legal Entity Identifier d'une entreprise dans GLEIF. Affiche le LEI, son statut d'enregistrement et quelle entité consolide celle-ci (société mère directe et ultime). Avec --children les entités qu'elle consolide sont listées.

`$ swissco lei CHE-412.669.376 Legal name UBS Switzerland AG LEI 549300WOIFUSNYH0FL22 Registered as CHE-412.669.376 Jurisdiction CH Status ACTIVE Direct parent UBS Group AG (549300SZJ9VS8SGXAN81, CH) Ultimate parent UBS Group AG (549300SZJ9VS8SGXAN81, CH) Direct children 12`

### swissco research \<query>

Rechercher dans le registre fédéral des projets de recherche financés par la Confédération (ARAMIS). Un IDE est vérifié contre l'IDE du participant du projet; le texte libre est recherché tel quel.

`$ swissco research CHE-115.694.164 title project_number office status start_date Hydrogen storage in metal hydrides SI/502345 SERI Completed 2022-03-01 Advanced fuel cell membranes SI/502891 SERI Ongoing 2024-01-15`

### swissco watch \<file>

Calcule une empreinte des champs identité, adresse et but de chaque entreprise. Code de sortie 10 si quelque chose a changé, 0 sinon. Conçu pour cron.

`$ swissco watch my_competitors.txt Checked 12 companies, 2 changed. $ echo $? 10`

## Formats de sortie

Chaque commande accepte --format table|json|csv. La sortie redirigée et la sortie terminal sont identiques octet par octet. La même commande fonctionne dans un script et dans un notebook.

## Skill agent

swissco inclut un skill agent qui apprend à Claude Code, Cursor, Codex et d'autres agents de codage à piloter le CLI. Une fois installé, un agent répond aux questions en langage naturel en exécutant la bonne commande swissco.

`npx skills add prospex-ch/swissco-cli`

Le skill s'installe dans .agents/skills/swissco/. Ajoutez -g pour installer globalement dans chaque projet, ou --all pour accepter les options par défaut sans confirmation.

Une fois le skill installé, posez des questions comme :

`Quelles entreprises à Zoug mentionnent la blockchain dans leur but ? Est-ce que quelque chose a changé chez CHE-105.943.826 depuis juin ? Liste les entreprises nouvellement inscrites dans le canton de Vaud cette semaine.`

Le CLI swissco doit être dans le PATH ou accessible via uvx pour que l'agent puisse l'exécuter.

## Sources de données

| Source | Données | Authentification |
| --- | --- | --- |
| Zefix on LINDAS | Registre du commerce: identité de l'entreprise, forme juridique, adresse, but | Aucune |
| SHAB | Publications de la gazette, classification des événements | Aucune |
| Zefix REST | Capital, statut, date de radiation, anciens noms, relations entre sociétés | Identifiants optionnels |
| simap | Marchés publics: appels d'offres, adjudications, répertoire des fournisseurs avec IDE | Aucune |
| FINMA | Banques et négociants en valeurs mobilières autorisés: type d'autorisation, catégorie de surveillance | Aucune |
| GLEIF | Legal Entity Identifiers: LEI, statut d'enregistrement, structure de groupe (qui consolide qui) | Aucune |
| ARAMIS | Projets de recherche financés par la Confédération: titre, office, participants avec IDE | Aucune |

Toutes les commandes fonctionnent sans authentification. Des identifiants Zefix optionnels débloquent des champs supplémentaires dans lookup et la recherche par préfixe dans search. Les données FINMA couvrent les banques et négociants en valeurs mobilières. Les autres types d'autorisation figurent sur des listes séparées.

## Liens

[GitHub](https://github.com/prospex-ch/swissco-cli) · [PyPI](https://pypi.org/project/swissco/) · [Documentation](https://swissco.readthedocs.io/) · Licence: MIT

Prospex suit l'ensemble de votre marché et vous alerte quand quelque chose bouge.

[Voir un exemple de marché](https://prospex.ch/fr/liste-entreprises-suisses/)
