External contacts, such as your customer's contacts, can work on your projects when they're project members with the Project Collaborator role. When a task is only for your own team, set it to Team Only, and they won't see it.
Make a task Team Only
Open the task, or start a new one with Add Task.
Click the visibility setting next to the task type, just below the task title. It shows Everyone until you change it. In the Create a Task popup, it's next to the heading.
Choose Team Only (Visible to Team only).

On an existing task, the change saves straight away. To share the task again, choose Everyone (Visible to Team & External Contacts).
Only team members see this setting. To change it on an existing task, you need the Update task permission on the project. Admins can change any task.
In the List and Board views, and in My Tasks and All Tasks, a padlock before the title marks each Team Only task.
What Team Only does
External contacts on the project:
- don't see the task anywhere, and can't open it from a link;
- aren't notified about it, and don't get its emails;
- can't post to it by replying to an old email;
- don't see its attachments in the Files view;
- can't choose it when they log time;
- don't see it in Chat's Tasks tab, in search results or in calendar feeds.
Team Only tasks also never appear on public project pages.
A new subtask starts with its parent's setting. When you use a project as a template, the tasks copied from it keep their setting.
Don't assign a Team Only task to an external contact: they can't see it and won't be told about it.
To invite customers to work on your tasks in the first place, see collaborating with customers on tasks.